[php] formulaire liste déroulante avc requete
Résolu
Spectoo
Messages postés
18
Date d'inscription
Statut
Membre
Dernière intervention
-
Spectoo Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
Spectoo Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voilà je suis confronté à un probleme dans le cadre de la récupération de données d'une liste déroulante ...
Je sais le faire avec une liste normal (utilisation de method="post") seulement la c'est particulier ; le select étant utiliser sur une page "modifier.php", il y a un while dans mes options ... voici le code tout moche :
<select name="numgroupe">
<?php
$index = mysql_query ("SELECT * FROM table");
while($boucle = mysql_fetch_array($index2))
{ ?>
<option value="<?php $boucle['numtoto'] ; ?>" <? if ($boucle['numtoto']==$titi) { echo selected ;} ?> >
<?php echo $boucle['nomtoto'] ;?></option>
<?php } ?>
</select>
Ce select me permet d'afficher automatiquement les "options" ainsi que celle qui correspond à la personne à modifier. Mais voilà lors de l'enregistrement apres modification, la base enregistre tout mais le select ne me renvoi aucune valeur.
Quel crac sera capable de débloquer mon problème ? :)
Voilà je suis confronté à un probleme dans le cadre de la récupération de données d'une liste déroulante ...
Je sais le faire avec une liste normal (utilisation de method="post") seulement la c'est particulier ; le select étant utiliser sur une page "modifier.php", il y a un while dans mes options ... voici le code tout moche :
<select name="numgroupe">
<?php
$index = mysql_query ("SELECT * FROM table");
while($boucle = mysql_fetch_array($index2))
{ ?>
<option value="<?php $boucle['numtoto'] ; ?>" <? if ($boucle['numtoto']==$titi) { echo selected ;} ?> >
<?php echo $boucle['nomtoto'] ;?></option>
<?php } ?>
</select>
Ce select me permet d'afficher automatiquement les "options" ainsi que celle qui correspond à la personne à modifier. Mais voilà lors de l'enregistrement apres modification, la base enregistre tout mais le select ne me renvoi aucune valeur.
Quel crac sera capable de débloquer mon problème ? :)
A voir également:
- [php] formulaire liste déroulante avc requete
- Liste déroulante excel - Guide
- Whatsapp formulaire opposition - Guide
- Liste déroulante en cascade - Guide
- Formulaire de réclamation facebook - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
6 réponses
Pourrais tu expliquer ton problème plus en détail avec un peu plus de code stp ?
Parce que pour l'instant je ne sais :
- Ni le problème
- Ni ce que tu veux faire et/ou afficher
Cordialement,
Parce que pour l'instant je ne sais :
- Ni le problème
- Ni ce que tu veux faire et/ou afficher
Cordialement,
Salut
une petite erreur à mon avis:
$index = mysql_query ("SELECT * FROM table");
while($boucle = mysql_fetch_array($index2))
pourquoi $index2 ?? alors que tu fais ta requette avec $index
et mets des noms de variables plus appropriées
$reponse = mysql_query ("SELECT * FROM table");
while($ligne = mysql_fetch_array($reponse ))
$ligne['....']
etc...
une petite erreur à mon avis:
$index = mysql_query ("SELECT * FROM table");
while($boucle = mysql_fetch_array($index2))
pourquoi $index2 ?? alors que tu fais ta requette avec $index
et mets des noms de variables plus appropriées
$reponse = mysql_query ("SELECT * FROM table");
while($ligne = mysql_fetch_array($reponse ))
$ligne['....']
etc...
ok excusez moi ...
alors en fait pour j'ai modifier le code pour faire un truc standard plus compréhensible mais ca n'a pas marché alors voici le code exactement comme je l'ai écrit :
<form name="form1" method="post" action="update_personne.php">
...blablabla...
<select name="numgroupe">
<?php
$index2 = mysql_query("SELECT * FROM groupes");
while($boucle = mysql_fetch_array($index2))
{
?>
<option value="<?php $boucle['numgroupe'] ;?>" <? if ($boucle['numgroupe']==$numgroupe) { echo selected ;} ?> ><?php echo $boucle['nomgroupe'] ;?></option>
<?php
} ?>
</select>
</form>
donc voila : ce code est sur une page pour modifier les informations d'une personne ; quand je valide, ca envoi a ce fichier :
<?php
$numperso=addslashes($_POST['numperso']);
$nom=addslashes($_POST['nom']);
$prenom=addslashes($_POST['prenom']);
$adresse=addslashes($_POST['adresse']);
$cp=addslashes($_POST['cp']);
$ville=addslashes($_POST['ville']);
$j=addslashes($_POST['j']);
$m=addslashes($_POST['m']);
$a=addslashes($_POST['a']);
$datenaiss=$a."-".$m."-".$j ;
$numgroupe=addslashes($_POST['numgroupe']);
$nomsupp=addslashes($_POST['nomsupp']);
$prenomsupp=addslashes($_POST['prenomsupp']);
$adressesupp=addslashes($_POST['adressesupp']);
$cpsupp=addslashes($_POST['cpsupp']);
$villesupp=addslashes($_POST['villesupp']);
$utiliser=addslashes($_POST['distri']);
$date=date("Y-m-d");
include "../config.php" ;
mysql_query("update personnes set nom='$nom',prenom= '$prenom', adresse='$adresse', cp= '$cp', ville='$ville',datenaiss='$datenaiss', numgroupe='$numgroupe',
nomsupp='$nomsupp', prenomsupp='$prenomsupp', adressesupp='$adressesupp', cpsupp='$cpsupp', villesupp='$villesupp', utiliser='$utiliser' where numperso='$numperso'");
mysql_close();
?>
<html>
<head>
<title></title>
<META http-equiv="refresh" content="2; URL=../index.php">
<meta name="generator" content="Namo WebEditor v5.0(Trial)">
</head>
<body>
<center>L'enregistrement a été bien effectuée...</center>
</body>
</html>
et bien entendu cela doit tout enregistrer (ou plutot updater) dans la base de données ; seulement tout est updater mais le numgroupe n'envoi aucune information (j'ai essayé de mettre un echo pour comprendre ce qu'il renvoyait comme donnée mais il ne renvoi absolument rien)
j'espere avoir été plus precis :)
et merci de votre interet
alors en fait pour j'ai modifier le code pour faire un truc standard plus compréhensible mais ca n'a pas marché alors voici le code exactement comme je l'ai écrit :
<form name="form1" method="post" action="update_personne.php">
...blablabla...
<select name="numgroupe">
<?php
$index2 = mysql_query("SELECT * FROM groupes");
while($boucle = mysql_fetch_array($index2))
{
?>
<option value="<?php $boucle['numgroupe'] ;?>" <? if ($boucle['numgroupe']==$numgroupe) { echo selected ;} ?> ><?php echo $boucle['nomgroupe'] ;?></option>
<?php
} ?>
</select>
</form>
donc voila : ce code est sur une page pour modifier les informations d'une personne ; quand je valide, ca envoi a ce fichier :
<?php
$numperso=addslashes($_POST['numperso']);
$nom=addslashes($_POST['nom']);
$prenom=addslashes($_POST['prenom']);
$adresse=addslashes($_POST['adresse']);
$cp=addslashes($_POST['cp']);
$ville=addslashes($_POST['ville']);
$j=addslashes($_POST['j']);
$m=addslashes($_POST['m']);
$a=addslashes($_POST['a']);
$datenaiss=$a."-".$m."-".$j ;
$numgroupe=addslashes($_POST['numgroupe']);
$nomsupp=addslashes($_POST['nomsupp']);
$prenomsupp=addslashes($_POST['prenomsupp']);
$adressesupp=addslashes($_POST['adressesupp']);
$cpsupp=addslashes($_POST['cpsupp']);
$villesupp=addslashes($_POST['villesupp']);
$utiliser=addslashes($_POST['distri']);
$date=date("Y-m-d");
include "../config.php" ;
mysql_query("update personnes set nom='$nom',prenom= '$prenom', adresse='$adresse', cp= '$cp', ville='$ville',datenaiss='$datenaiss', numgroupe='$numgroupe',
nomsupp='$nomsupp', prenomsupp='$prenomsupp', adressesupp='$adressesupp', cpsupp='$cpsupp', villesupp='$villesupp', utiliser='$utiliser' where numperso='$numperso'");
mysql_close();
?>
<html>
<head>
<title></title>
<META http-equiv="refresh" content="2; URL=../index.php">
<meta name="generator" content="Namo WebEditor v5.0(Trial)">
</head>
<body>
<center>L'enregistrement a été bien effectuée...</center>
</body>
</html>
et bien entendu cela doit tout enregistrer (ou plutot updater) dans la base de données ; seulement tout est updater mais le numgroupe n'envoi aucune information (j'ai essayé de mettre un echo pour comprendre ce qu'il renvoyait comme donnée mais il ne renvoi absolument rien)
j'espere avoir été plus precis :)
et merci de votre interet
<option value="<?php $boucle['numgroupe'] ;?>" <? if ($boucle['numgroupe']==$numgroupe) { echo selected ;} ?> ><?php echo $boucle['nomgroupe'] ;?></option>
Là où j'ai mis en gras, est-ce qu'il ne faudrait pas plutôt mettre: <?php echo $boucle['numgroupe']; ?> ?
Après tout ça a beau ne pas être directement affiché à l'écran, il s'agit quand même d'écrire dans le code HTML de la page, donc il me semble que le echo est nécessaire ... (Mais je dis ça sans avoir testé)
Là où j'ai mis en gras, est-ce qu'il ne faudrait pas plutôt mettre: <?php echo $boucle['numgroupe']; ?> ?
Après tout ça a beau ne pas être directement affiché à l'écran, il s'agit quand même d'écrire dans le code HTML de la page, donc il me semble que le echo est nécessaire ... (Mais je dis ça sans avoir testé)
Oui effectivement il faut echo dans
pour dire à php d'écrire la valeur de la variable
Ensuite dans ta deuxieme page appelée, après avoir fait lePDATE, il faudrait que tu fasses une nouvelle requette
SELECT* FROM personnes WHERE where numperso='$numperso'
si tu veux afficher le résultat de ton Update
<option value="<?php echo $boucle['numgroupe'] ;?>" <? if ($boucle['numgroupe']==$numgroupe) { echo selected ;} ?> ><?php echo $boucle['nomgroupe'] ;?></option>
pour dire à php d'écrire la valeur de la variable
Ensuite dans ta deuxieme page appelée, après avoir fait lePDATE, il faudrait que tu fasses une nouvelle requette
SELECT* FROM personnes WHERE where numperso='$numperso'
si tu veux afficher le résultat de ton Update
Re, moi j'ai testé et le problème ne vient pas de la !
Il vient du fait que la variable en question n'est pas passé par la méthode post car il manque un attribut !!
Je pense que dans les options pas du select mais dans option il faut rajouter l'option id :
Après je sais pas si ca fonctionne !
Il vient du fait que la variable en question n'est pas passé par la méthode post car il manque un attribut !!
Je pense que dans les options pas du select mais dans option il faut rajouter l'option id :
<option id="numgroupe">
Après je sais pas si ca fonctionne !
salut.dans le meme cadre j'ai une petite demande a vous faire.
d'abord je prépare un pojet de gestion avec php mysql, j'ai fait les interfaces statiques avec HTML et mnt je dois travailler sur les requetes en php."""je suis une debutante=je ferai ce genre de chose pour la premiere fois."""
le probleme: je ferai quoi(le code) pour avoir au moment de la saisie d'un nom + prénom ,le remplissage de tte la formulaire cvd que il suffi dentrer le nom prenom pour avoir de la base de donné les autre attributs(adresse, tél...).
merci pour votre temps et excusez moi pour le derangement.
d'abord je prépare un pojet de gestion avec php mysql, j'ai fait les interfaces statiques avec HTML et mnt je dois travailler sur les requetes en php."""je suis une debutante=je ferai ce genre de chose pour la premiere fois."""
le probleme: je ferai quoi(le code) pour avoir au moment de la saisie d'un nom + prénom ,le remplissage de tte la formulaire cvd que il suffi dentrer le nom prenom pour avoir de la base de donné les autre attributs(adresse, tél...).
merci pour votre temps et excusez moi pour le derangement.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question