Aide sur script trouvé ici (lier 2 listes déroulantes)

jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005 - 16 mars 2005 à 12:54
jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005 - 16 mars 2005 à 16:13
salut,
je vous demande de l'aide car je n'arrives pas a faire tourner la fonction.

j'ai créé une table medecin avec les champs qu'il faut, et la premiere liste se remplit bien mais quand je cliques sur le premier bouton ça me renvoie l'erreur suivante :

You don't have permission to access /Tests/
Notice: Undefined variable: PHP_SELF in c:/program files/easyphp1-8/www/tests/listederoulante.php on line 9
on this server.

mon code exact (j'ai annulé les 2 mysql_close mais ça y fait rien) :

Rechercher,

----

Choisissez une Spécialité dans
la liste:,
<form method=\"post\" name=\"formu\" action=\"<?echo $PHP_SELF;?>\">
<?php
mysql_connect(\"localhost\",\"root\",\"\");
mysql_selectdb(\"test\") or die(\"Connexion impossible\");
$requete=mysql_query(\"select distinct specialite from medecin\");?>

<? echo('<select name=\"specia\" >');
echo('<option value=\"'.'\">'.'</option>');
while ($ligne=mysql_fetch_object($requete)){
echo('<option value=\"'.$ligne->specialite .'\">'.$ligne->specialite.'</option>'); }
echo('</select>');
//mysql_close();
?>

</form>
</td>

----

Choisissez un M&eacute;decin
dans la liste:,
<form method="post" name="med" action="">
<? $requete1=mysql_query("select * from medecin where specialite='specia'")
?>

<? echo('<select name="med">');
if($specia==""){
echo('<option value="'.'">'.'Choisissez une spécialité avant'.'</option>');
}
else
{echo('<option value="'.'">'.'</option>');}
while ($ligne1=mysql_fetch_object($requete1)){
echo('<option value="'.$ligne1->nom .'">'.$ligne1->nom.'</option>'); }
echo('</select>');
//mysql_close();
?>

</form>

12 réponses

morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
16 mars 2005 à 13:00
Salut
essaye avec ca, en rouge les modif
dis moi si ca marche

Rechercher,

----

Choisissez une Spécialité dans
la liste:,
<form method=\"post\" name=\"formu\" action=\"<?echo $PHP_SELF;?>\">
<?php
mysql_connect(\"localhost\",\"root\",\"\");
mysql_selectdb(\"test\") or die(\"Connexion impossible\");
$requete=mysql_query(\"select distinct specialite from medecin\");?>

<? echo('<select name=\"specia\" >');
echo('<option value=\"'.'\">'.'</option>');
while ($ligne=mysql_fetch_object($requete)){
echo('<option value=\"'.$ligne->specialite .'\">'.$ligne->specialite.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>
</td>

----

Choisissez un M&eacute;decin
dans la liste:,
<form method="post" name="med" action="">
<? mysql_connect("localhost","root","");
mysql_selectdb("test") or die("Connexion impossible");
$requete1=mysql_query("select * from medecin where specialite='$specia'")
?>

<? echo('<select name="med">');
if($specia==""){
echo('<option value="'.'">'.'Choisissez une spécialité avant'.'</option>');
}
else
{echo('<option value="'.'">'.'</option>');}
while ($ligne1=mysql_fetch_object($requete1)){
echo('<option value="'.$ligne1->nom .'">'.$ligne1->nom.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>


<HR>
Sans maîtrise la puissance n'est rien et je maîtrise... Apprend ca petit
Sur ce a tchiao bon dimanche.
0
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
16 mars 2005 à 13:02
essai aussi de öodifier cette ligne ="<?echo $PHP_SELF;?>">

par ="<? echo $PHP_SELF;?>"> (avec un espace avant le echo c souvent source de pb)


<HR>
Sans maîtrise la puissance n'est rien et je maîtrise... Apprend ca petit
Sur ce a tchiao bon dimanche.
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
16 mars 2005 à 13:31
Salut,



encore mieux, enlever le <? et le remplacer par <?php



Ensuite tentes un $_SERVER['PHP_SELF'] ensuite chmode ton dossier en 655 minimum (dossier "tests" ou crée-le si il n'existe pas)



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
16 mars 2005 à 13:37
Bonjour,

Ce serait plutot :

<?php echo $_SERVER['PHP_SELF']; ?>

<hr size="2" width="100%">Si ma reponse te convient, merci de l'accepté !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
16 mars 2005 à 13:46
ca revient au meme j utilise cette version du script qui marche bien chez moi

<HR>
Sans maîtrise la puissance n'est rien et je maîtrise... Apprend ca petit
Sur ce a tchiao bon dimanche.
0
jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005
16 mars 2005 à 14:38
merci pour votre aide les gars !
mais ça marche toujours pas

primo quand la page se charge:
"Notice: Undefined variable: specia in c:\program files\easyphp1-8\www\tests\listederoulante.php on line 32"
j'arrives assez bien a comprendre puisque $specia n'est définie nulle part avant.

secundo si j'utilises l'idée de jojo738 :
Ce serait plutot :
<?php echo $_SERVER['PHP_SELF']; ?>

...ça arrete de me renvoyer l'erreur (quand je clique surle premier bouton) : You don't have permission to access /Tests/
Notice: Undefined variable: PHP_SELF in c:/program files/easyphp1-8/www/tests/listederoulante.php on line 9
on this server.
... mais il se passe rien...enfin si ça recharge la page en vidant la valeur choisie...

donc pour le moment mon code est un copier coller de la réponse de morpheus avec l'astuce de jojo, ce qui donne :

Rechercher,

----

Choisissez une Spécialité dans
la liste:,
<form method=\"post\" name=\"formu\" action=\"<?php echo $_SERVER['PHP_SELF']; ?>\">
<?php
mysql_connect(\"localhost\",\"root\",\"\");
mysql_selectdb(\"test\") or die(\"Connexion impossible\");
$requete=mysql_query(\"select distinct specialite from medecin\");?>

<? echo('<select name=\"specia\" >');
echo('<option value=\"'.'\">'.'</option>');
while ($ligne=mysql_fetch_object($requete)){
echo('<option value=\"'.$ligne->specialite .'\">'.$ligne->specialite.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>
</td>

----

Choisissez un M&eacute;decin
dans la liste:,
<form method="post" name="med" action="">
<? mysql_connect("localhost","root","");
mysql_selectdb("test") or die("Connexion impossible");
$requete1=mysql_query("select * from medecin where specialite='$specia'")
?>

<? echo('<select name="med">');
if($specia==""){
echo('<option value="'.'">'.'Choisissez une spécialité avant'.'</option>');
}
else
{echo('<option value="'.'">'.'</option>');}
while ($ligne1=mysql_fetch_object($requete1)){
echo('<option value="'.$ligne1->nom .'">'.$ligne1->nom.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>

Merci pour votre aide.
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
16 mars 2005 à 14:41
Re,
Moi dans mes script je ne met rien dans action de cette facon = PHP_SELF
<form method="post" name="formu" action="">

<HR width="100%" SIZE=2>
Si ma reponse te convient, merci de l'accepté !
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
16 mars 2005 à 14:45
Normal que l'erreur s'en aille



Ensuite pour le "Notice: Undefined variable: specia in c:\program files\easyphp1-8\www\tests\listederoulante.php


rajoute ceci en haut de ta page listederoulante.php :



$specia='';
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005
16 mars 2005 à 15:09
anthmicro :
effectvement si je fais ce que tu dis l'erreur pour $specia n'apparait plus.
mais ça ne fonctionne pas cad que la page se charge bien sans afficher d'erreur, la premiere liste est remplie mais si je cliques sur le bouton ça recharge la page en enlevant la valeur que j'avais séléctionnée... et la 2eme liste est vide...

mon code :

Rechercher,

----

Choisissez une Spécialité dans
la liste:,

<form method=\"post\" name=\"formu\" action=\"\">
<?php
$specia='';

mysql_connect(\"localhost\",\"root\",\"\");
mysql_selectdb(\"test\") or die(\"Connexion impossible\");
$requete=mysql_query(\"select distinct specialite from medecin\");?>

<? echo('<select name=\"specia\" >');
echo('<option value=\"'.'\">'.'</option>');
while ($ligne=mysql_fetch_object($requete)){
echo('<option value=\"'.$ligne->specialite .'\">'.$ligne->specialite.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>
</td>

----

Choisissez un M&eacute;decin
dans la liste:,
<form method="post" name="med" action="">
<? mysql_connect("localhost","root","");
mysql_selectdb("test") or die("Connexion impossible");
$requete1=mysql_query("select * from medecin where specialite = '$specia'")
?>

<? echo('<select name="med">');
if($specia==""){
echo('<option value="'.'">'.'Choisissez une spécialité avant'.'</option>');
}
else
{echo('<option value="'.'">'.'</option>');}
while ($ligne1=mysql_fetch_object($requete1)){
echo('<option value="'.$ligne1->nom .'">'.$ligne1->nom.'</option>'); }
echo('</select>');
mysql_close();
?>

</form>

Merci pour votre aide
0
jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005
16 mars 2005 à 15:14
je precise que j'ai bien une table "medecin" avec 2 champs : "specialite" et "nom"...
je comprends pas ...
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
16 mars 2005 à 16:06
En même temps cherche un peu, on voit une quantité de code ça donne pas envie de regarder...

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
jchbt Messages postés 10 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 17 mars 2005
16 mars 2005 à 16:13
je te jures que je fais que ça de chercher... mais j'ai pas encore trouvé...
a priori je comprends pas pourquoi si on a une table de structure OK par rapport a l'exemple... l'exemple marche pas.
je sais que c'est chiant les débutants :-) ça a besoin d'exemples qui marchent !
0
Rejoignez-nous