[RESOLU] Question Liste Deroulante

Eléphanteau du PHP | 26 Messages

25 févr. 2016, 09:39

Bonjour, je viens de constater le soucis suivant :
Dans un formulaire, avec une liste deroulante et un bouton 'valider' pour afficher les donnees, je m'apercois que le premier et le dernier element de la liste deroulante ne fonctionne pas. C'est a dire aucune donnee ne s'affiche. Si je choisi un autre element la ca fonctionne correctement.
Avez vous une idee d'ou cela provient ?
Merci de vos reponses
Thierry

ynx
Mammouth du PHP | 586 Messages

25 févr. 2016, 10:25

Salut,

As-tu un petit exemple de code qui nous montre le problème stp ?

Bonne journée,

Eléphanteau du PHP | 26 Messages

25 févr. 2016, 10:30

voila le code....
<form method="post" action="outils.php" name="form_rendre">
  <table style="text-align: left; width: 1536px; height: 140px; margin-left: auto; margin-right: auto;" border="1" cellpadding="2" cellspacing="2">
    <tbody>
      <tr>
        <td style="vertical-align: middle; text-align: center;">
        <select name="combolivre">
        <option value="Choisissez un Titre">Choisissez un Titre</option>
<?php 
$bdd = mysqli_connect('xxxxxxxxxxx', 'xxxxxxxxxxxxxx', 'xxxxxxxxxxxxxxxxxxxx', 'xxxxxxxxxxxx');
	$Requete = mysqli_query($bdd,"SELECT emp_titre FROM emprunts where emp_dateretourreel='9998-12-31' order by emp_titre");
	while ($data = mysqli_fetch_assoc($Requete))
        {
		echo '<option>'.$data["emp_titre"].'</option><br/>';
	}
	mysqli_free_result($Requete);
	echo "</select><p></p><input type='submit' value='Valider ce Titre'><br>";
	?>
        </select>
        </td>
      </tr>
      <tr>
        <td style="vertical-align: middle; text-align: center;"> <font style="color: black;" size="+2"><?php $titre=$_POST['combolivre'];
     	$bdd = mysqli_connect('xxxxxxxxxxxxxxxx', 'xxxxxxxxxxxxxxxxx', 'xxxxxxx', 'xxxxxxxx');
 	$Requete = mysqli_query($bdd,"SELECT emp_titre, emp_auteur, emp_annee, date_format(emp_datepret, '%d/%m/%Y') as datedupret,  date_format(emp_dateretour, '%d/%m/%Y') as dateduretour FROM emprunts where emp_titre='$titre'");
 	while ($data = mysqli_fetch_assoc($Requete))
        {
        echo "   Titre : ".$data['emp_titre'].'<br>';
        echo '<input type="hidden" name="titrelivre" value="'.$data['emp_titre'].'"/>';
        echo "   Auteur : ".$data['emp_auteur'].'<br>';
        echo '<input type="hidden" name="titreauteur" value="'.$data['emp_auteur'].'" />';
        echo "   Année : " .$data['emp_annee'].'<br>';
	    echo "   Date Emprunt : " .$data['datedupret'].'<br>';
 	    echo "   Date Retour prévue : " .$data['dateduretour'].'<br></tr></td>';
       	}
 	mysqli_free_result($Requete);
?>

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

25 févr. 2016, 10:38

Bonjour,

Regarde le code HTML généré par PHP (dans ta page, examiner l'élément ou clic droit afficher la source au pire), et jette un oeil à la console pour voir si tu n'aurais pas un message d'erreur.
Pour accéder à la console : Ctrl+Maj+i dans Firefox
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 26 Messages

25 févr. 2016, 10:56

@ @rthur..... oui euh bon.... j'ai jete un oeil...c est nouveau ca pour moi...je debute dans le PHP. Alors comment je vais voir si il y a une erreur ? la seule chose que je remarque c'est que, a deux reprises, les titres des livres (contenu de la liste deroulante, sont entre des doubles quotes. Pas le premier element. Le dernier l'est lui en revanche. Autrement rien de particulier j'ai bien la liste deroulante correctement alimentee
A priori ca ne vient pas de ca....

Eléphanteau du PHP | 26 Messages

25 févr. 2016, 12:30

Je precise la chose suivante. En rajoutant un echo du titre ($titre), la valeur est bien recuperee. Le probleme se situe donc au niveau de la requete qui ne renvoie aucune information, alors que pour les autres elements de la liste ca fonctionne... en regardant les donnees je ne vois rien d'anormal au niveau de la base de donnees.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

25 févr. 2016, 15:18

Je precise la chose suivante. En rajoutant un echo du titre ($titre), la valeur est bien recuperee. Le probleme se situe donc au niveau de la requete qui ne renvoie aucune information,
Alors fais un echo de ta requête et teste là ensuite dans phpmyadmin
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 26 Messages

25 févr. 2016, 17:25

merci de ta reponse. J'ai trouve le probleme..... certaines donnees avaient des espaces supplementaires dans le titre... Les "ceusses" qui utilisent le site vont m entendre chanter.......