déjà fais un var_dup de $donnees pour savoir si tu as un résultat de requête à mon avis c'est pas sûr. Sinon tu peux afficher la requête jouée pour savoir ce que tu envois en base
$stmt = $bdd->prepare(<<<'EOS'
SELECT (scoreDom + scoreExt)
FROM franceD1champ
WHERE saison="2019/2020"
AND :equipe IN(equipeDom, equipeExt)
ORDER BY id
EOS
);
$stmt->bindParam(':equipe', $equipe);
$serieButs = [];
foreach ($equipesEngagees as $equipe) {
$stmt->execute();
$serieButs[$equipe] = $stmt->fetchAll(PDO::FETCH_COLUMN, 0);
}
var_dump($serieButs);
Tu n'as pas activé les erreurs PDO/SQL ? Il manque un `:` devant equipeExt et la casse des marqueurs n'est pas bonne entre la requête et leurs binds (potentiellement celle des colonnes aussi) mais ça ne sert à rien de binder deux fois la même valeur. Après, je ne sais pas vraiment ce que tu veux obtenir.
Décidément, leur éditeur HTML, c'est une vraie bouze aussi ...
Et il y a probablement moyen de faire ça en une requête.
je vous remets mon code, j'ai fait des corrections, le résultat est presque ce qu'il me faut. J'ai un array avec chaque équipe à l'intérieur et pour chaque équipe, j'ai un array dans lequel se trouve le nb de but à chaque match.
Le dernier problême est que le nb de but correspond à la dernière boucle. Pour chaque équipe, j'ai le nombre de but de Tououse alors que j'aimerai avoir pour chaque équipe, son nombre de but.
Si vous avez une idée pour résoudre ca, ce serait sympa, je vous remercie.
$equipesEngagees = ['Amiens', 'Angers', 'Bordeaux', 'Brest', 'Dijon', 'Lille', 'Lyon', 'Marseille', 'Metz',
'Monaco', 'Montpellier', 'Nantes', 'Nice', 'Nimes', 'Paris SG', 'Reims', 'Rennes',
'St Etienne', 'Strasbourg', 'Toulouse'];
$serieButs = array();
$req = "SELECT (scoreDom + scoreExt) AS nbButs
FROM franceD1champ
WHERE saison='2019/2020'
AND (equipeDom=:equipedom OR equipeExt=:equipeext) ORDER BY id";
$stmt = $bdd->prepare($req);
for($i=0;$i<20;$i++){
$stmt->bindvalue('equipedom',$equipesEngagees[$i]);
$stmt->bindvalue('equipeext',$equipesEngagees[$i]);
$stmt->execute();
}
while ($donnees = $stmt->fetch()){
for($i=0;$i<20;$i++){
$serieButs[$equipesEngagees[$i]][] = $donnees['nbButs'];
}
}
var_dump($serieButs);
OK julp, merci, en faisant ton code, c'est ce qu'il me faut.
mais je pense que j'ai un array en trop.
Le var_dump donne ça :
$stmt = $bdd->prepare(<<<'EOS'
SELECT (scoreDom + scoreExt)
FROM franceD1champ
WHERE saison="2019/2020"
AND :equipe IN(equipeDom, equipeExt)
ORDER BY id
EOS
);
$stmt->bindParam(':equipe', $equipe);
$serieButs = [];
foreach ($equipesEngagees as $equipe) {
$stmt->execute();
$serieButs[$equipe] = $stmt->fetchAll(PDO::FETCH_NUM);
}
var_dump($serieButs);
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli