[RESOLU] problème chaîne de caractère dans une variable pour affichage d'une liste déroulante dynamique

Petit nouveau ! | 3 Messages

31 mai 2019, 15:21

bonjour,

Je souhaite créer dans un formulaire html une liste de choix de race de chien qui dépend d'une table mysql.
Je n'ai aucun problème pour afficher la liste avec les bons choix de race.
Le problème c'est la value que prend la variable si le choix se porte sur une race qui possède plus de 1 mot.
Ex: "Akita inu" selectionné me donne "Akita" en value
j'ai recherché et j'ai lu qu'il fallait mettre les variables entre '...' mais si je fais ainsi ça plante
Voilà mon code qui ne plante pas :
$reponse = $bdd->query('SELECT race FROM tablerace');
                while ($donnee = $reponse->fetch())
                    {
                    echo "<option value=".$donnee['race'].">".$donnee['race']."</option>";
                     }
                $reponse ->closeCursor();
Voilà une partie de la liste html qui en est issu :
<option value="Akita" inu="">Akita Inu</option>
alors que je voudrais :
<option value="Akita inu">Akita Inu</option>

Merci par avance

Eléphanteau du PHP | 24 Messages

31 mai 2019, 15:28

Je ne suis pas sur mais essaye de faire plutôt un "ET" dans ton echo.
genre :

Code : Tout sélectionner

echo "<option value=".$donnee['race']." && ".$donnee['race']."</option>";
Cela te permettrait d'obtenir Akita Inu.

Petit nouveau ! | 3 Messages

31 mai 2019, 15:47

Je ne suis pas sur mais essaye de faire plutôt un "ET" dans ton echo.
genre :

Code : Tout sélectionner

echo "<option value=".$donnee['race']." && ".$donnee['race']."</option>";
Cela te permettrait d'obtenir Akita Inu.
Merci mais non ton code ne règle pas mon problème la value ne prend toujours que le premier mot et pas celui après l'espace et je n'ai même plus ne nom de la race dans la liste déroulante. :(

Mammouth du PHP | 2703 Messages

31 mai 2019, 16:07

echo "<option value=\"".$donnee['race']."\">".$donnee['race']."</option>";
ou
echo '<option value="'.$donnee['race'].'">'.$donnee['race'].'</option>';

Petit nouveau ! | 3 Messages

31 mai 2019, 16:26

echo "<option value=\"".$donnee['race']."\">".$donnee['race']."</option>";
ou
echo '<option value="'.$donnee['race'].'">'.$donnee['race'].'</option>';
merci beaucoup ça marche :D