Bonjour,
Je souhaite compter et afficher le nombre d'occurrence identique entre 2 valeurs de 2 tables différentes php.
Je souhaite voir afficher un nombre correspondant par exemple:
Dans la Table matchs = id 66 (Il y a qu'une seul ligne forcément c'est la primaire AI)
Compter et afficher dans la Table stages, nom = matchsid, valeurs = 66, Si il y a 3 fois cette valeurs alors on affiche 3
<?php
$membre = $userinfo['id'];
$stmt = $bdd->prepare('SELECT * from matchs WHERE matchiduser = ? ORDER BY matchcreation DESC');
$stmt->execute(array($membre));
$stageselect = 0;
$resultstage = $bdd->prepare("SELECT * FROM stages WHERE matchsid ");
$nbrstage = $resultstage->execute(array($stageselect));
while($matches = $stmt->fetch(PDO::FETCH_OBJ)) { ?>
<div class="stage" style="position:relative;">
<form class="auto left">
<tr>
<td><?php echo $matches->name; ?></td>
<?php
$matchselect = $matches->id;
$result = $bdd->prepare("SELECT * FROM matchs WHERE id =$matchselect");
$nbrs = $result->execute(array($matchselect, $stageselect));
$count = $result->rowCount(); ?>
<td><?php echo $count ?></td>
<?php{ ?>
Forcément mon code ne fonctionne pas il m'affiche le résultat 1
Tout le code n'est pas affiché mais l'éssentiel est la, a priori
Voila merci d'avance.
Bonjour,
Utilises plutôt un alias
SELECT COUNT(*) as nombre FROM stages ....
puis $idSame->nombre
Tu peux aussi preparer ta requête comme ça tu la sors de la boucle et ne garde que le execute + fetch
Hello,
J'ai tester COUNT(*) mais je ne sais pas m'en servir et dans la doc PHP je n'ai pas trouver mon bonheur.
Le probleme c'est que j'ai une premiere boucle while pour afficher tout les matchs et avec le count(*) en dessous le resultat est bon puisque il trouve 3 matches avec 2 stages par match ce que j'ai dans la db ayant les memes id mais le tout dans un tableau sans les id.
Je ne sias donc pas comment faire l'association des id et coment faire un echo de la bonne valeur du tableau array.
Voici ce que j'ai testé entre autre :
<?php while($matches = $stmt->fetch(PDO::FETCH_OBJ)) { ?>
<div class="stage" style="position:relative;">
<form class="auto left">
<?php
$idmatchs = $matches->id;
$sameId = $bdd->query("SELECT COUNT(*) FROM stages WHERE matchsid='$idmatchs' ");
$idSame = $sameId->fetch();
var_dump($idSame);
?>
<tr>
<td><?php echo $idSame; ?></td>
<td><?php echo $matches->name; ?></td>
<td><?php echo $matches->matchdate; ?></td>
<td><?php echo $matches->clubName; ?></td>
Le résultat du var_dump de la variable du fetch:
array (size=2)
'COUNT()' => string '2' (length=1)
0 => string '2' (length=1)
C:\wamp64\www\matchs3.php:512:
array (size=2)
'COUNT()' => string '2' (length=1)
0 => string '2' (length=1)
C:\wamp64\www\matchs3.php:512:
array (size=2)
'COUNT(*)' => string '2' (length=1)
0 => string '2' (length=1)