Version complète: sur le forum Webmaster Hub : liste deroulante
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
bouzrara
CODE
<html>
<body>
<?php
$cn=mssql_connect("localhost","noura","nounou");
if(!$cn)
{echo "erreur";
exit;}
$db=mssql_select_db("northwind",$cn);
if(!$db)
{echo "erreur d' acce ala base ";
exit;}
echo "<FORM METHOD = \"POST\" name=\"select_cat\">";

echo "<SELECT NAME ='categoryid'>";
// selection de la liste produit de la categorie dans la base
$req = "SELECT categoryid, categoryname FROM categories ORDER BY categoryid";
$res = mssql_query($req,$cn);
// affiche la selection
while ($rep = mssql_fetch_object($res))
{
// garde le focus sur le select
if($_POST['categoryid1']==$rep->categoryname)
{

$selectopt=" selected";
}
else
{
$selectopt="";
}
echo "<option value=".$rep->categoryid.$selectopt.">".$rep->categoryname."</option>\n";
}
echo "</SELECT>";
//echo "<INPUT TYPE ='submit' VALUE='Afficher'>";
if($_POST['categoryid'])
{echo $_POST['categoryid'];}
//echo "</FORM>";
?>
</body>
</html>


ce code permet l' affichage d' une liste des category de la base northwind concue sous sql server , je veux recuperer
la valeur selectionné de la liste or l' erreur suivant apparait
l'erreur:

Notice: Undefined index: categoryid in d:\program files\easyphp1-7\www\liste2.php on line 35
--->$_POST[''categoryid'] n' est pas connue
Dan
Tout simplement parce que le formulaire qui envoie les données n'a pas:
- soit la méthode "post" (par défaut la méthode est "get" si elle n'est pas précisée)
- soit la variable "categoryid" définie

Vérifies ces deux points wink.gif
Tu as une variable $_POST['categoryid1'] dans le programme à la ligne:
CODE
if($_POST['categoryid1']==$rep->categoryname)


Dan
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.