[RESOLU] Requete avec variable

Petit nouveau ! | 2 Messages

23 juin 2014, 17:27

Bonjour,

je débute en php et j'ai un problème de requête quand j'essaye de mettre une variable dedans.

je déclare un tableau:
$tableau_equipes = array('A','B','C','D','E','F','G','H');

puis je fais ceci :

<?php
.... un peu de code avant qui compile....
for($i=0; $i<8; $i++)
{
$reponse = $bdd->query('SELECT nom FROM equipes WHERE groupe = "$tableau_equipes[$i]"');
while($donnees = $reponse->fetch())
{
echo $donnees['nom'];
}
$reponse->closeCursor();
?>

Et la ça ne m'affiche rien. Quand je remplace manuellement $tableau_equipes[$i] par une des valeurs du tableau alors j'ai bien ce que je veux.
Où est mon erreur svp?

ViPHP
xTG
ViPHP | 7331 Messages

23 juin 2014, 18:18

Les variables ne sont pas interprétées entre simple quotes.
Préfères y la concaténation.
echo "test" . $variable;

Mammouth du PHP | 2278 Messages

23 juin 2014, 19:10

Pour dibverses raisons dont lestests facilités:
<?php
.... un peu de code avant qui compile....
for($i=0; $i<8; $i++)
{
$requete = 'SELECT nom FROM equipes WHERE groupe = "$tableau_equipes[$i]"';
print "<br>$requete"; //explicite ce que dit XTG
//on peut écrire:
$v_groupe = $tableau_equipes[$i];
$requete = "SELECT nom FROM equipes WHERE groupe = '$v_groupe'";
print "<br>$requete"; //explicite ce que dit XTG
$reponse = $bdd->query($requete);
while($donnees = $reponse->fetch())
{
echo $donnees['nom'];
}
$reponse->closeCursor();
?>
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 2 Messages

24 juin 2014, 10:54

Merci pour la rapidité des réponses.

Merci sirakawa, ta solution fonctionne parfaitement c'est ce que je voulais. La requête découpée récupère bien à chaque fois les lettres de mon tableau et les passent en paramètre.