Liste déroulante PHP/MySQL

Résolu/Fermé
Bill - 4 sept. 2008 à 14:02
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 4 sept. 2008 à 15:51
Bonjour,

J'ai un problème. J'ai une liste déroulante qui va chercher des noms de planète dans une base de données MySQL. Le but de la page est de modifier un enregistrement. Je choisis la planète que je veux modifier et quand je clique sur le bouton pour afficher les infos de cette planète, la planète que j'ai choisi ne reste pas dans la liste déroulante, c'est la première de la liste qui revient. Je vous met mon code pour que vous y voyez plus clair.

<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<title>Base de données Astronomie</title>
</head>
<body>
<center><table border="2px" width="800px" height="600px">
<tr align=left valign=top height="60px" id="banniere"><td></td></tr>
<tr valign=top><td background="transparent.png"><a href=index.php>Retour</a><br />
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("astronomie"); // Sélection de la base astronomie
$reponse = mysql_query("SELECT Nom FROM tbl_astre");
print "<form action=".basename($_SERVER['PHP_SELF'])." method=\"POST\">";
print "<select name=\"planete\">";
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<option><?php echo $donnees['Nom']; ?></option>
<?php
}
print "<input type=\"submit\" name=\"submit\" value=\"Afficher\"/>";
?>
</select>

<?php
if(isset($_POST["planete"]))
{
$planete=$_POST['planete'];
$reponse=mysql_query("SELECT * FROM tbl_astre WHERE Nom='$planete'");
while ($donnees = mysql_fetch_array($reponse))
{
?>

<?php echo "Nom : ".$donnees['Nom']?><br />
<?php echo "Rayon de l'orbite : ".$donnees['RayonOrbite']?><br />
<?php echo "Magnitude : ".$donnees['Magnitude']?><br />
<?php echo "Distance : ".$donnees['Distance']?><br />
Voici une photo de l'astre: <a href="<?php echo $donnees['Photo'];?>">ici</a>
<?php
}

//Nom
print "Nom : ";
print "<br />";
print "<input type=text name='NomAstre'>";
print "<br />";
//Rayon de l'orbite.
print "Rayon de l'orbite : ";
print "<br />";
print "<input type=text name='RayonOrbite'>";
print "<br />";
//Magnitude.
print "Magnitude : ";
print "<br />";
print "<input type=text name='Magnitude'>";
print "<br />";
//Photo.
print "Photo : ";
print "<br />";
print "<input type=text name='Photo'>";
print "<br />";
//Distance.
print "Distance : ";
print "<br />";
print "<input type=text name='Distance'>";
print "<br />";
//num_tbl_type
print "num_tbl_type : ";
print "<br />";
print "<input type=text name='type'>";
print "<br />";
//num_tbl_systeme
print "num_tbl_systeme : ";
print "<br />";
print "<input type=text name='systeme'>";
print "<br />";

print "<br />";
//Bouton
print "<input type=\"submit\" name=\"submit\" value=\"Modifier\"/>";

print "</form>";
/*$Rayon=$_POST['RayonOrbite'];
$Magnitude=$_POST['Magnitude'];
$Photo=$_POST['Photo'];
$Distance=$_POST['Distance'];
$type=$_POST['type'];
$systeme=$_POST['systeme'];
*/
//Modifier
if(isset($_POST["NomAstre"]))
{
$Nom=$_POST["NomAstre"];
mysql_query("UPDATE tbl_astre SET Nom='$Nom' WHERE Nom='$planete'");
}

}
?>selected
</td></tr>
</table></center>
<br />
</p>
<?php

mysql_close(); // Déconnexion de MySQL
?>

</body>
</html>

En clair ce que j'aimerais c'est que l'élément que j'ai choisi garde le focus quand je clique sur le bouton.
Meri de votre aide.

PS: Je crois que c'est en rapport avec "selected".
A voir également:

2 réponses

BeFacmoi Messages postés 669 Date d'inscription dimanche 13 janvier 2008 Statut Membre Dernière intervention 28 décembre 2008 175
4 sept. 2008 à 14:03
}
?>selected
</td></tr>
0
Oups désolé cela n'a rien à voir sa c'était juste pour me rappeler le nom.
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894 > Bill
4 sept. 2008 à 14:29
Salut,
vers ta ligne 19 ta ligne <option doit être ainsi:

<option value="<?php echo $donnees['Nom']; ?>" <?php if(isset($_POST["planete"]) AND $_POST["planete"]==$donnees['Nom']){ echo "selected";}?> > <?php echo $donnees['Nom']; ?></option>
0
Merci beaucoup!!! C'est exactement ce que je cherchais. Merci encore d'aider les gens comme ça!
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
4 sept. 2008 à 15:51
Y pas de quoi, penses à le passer en résolu
0