[PhP] MaJ à l'aide d'une liste déroulante
Résolu/Fermé
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
-
22 mai 2008 à 15:34
Estydral Messages postés 39 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 23 janvier 2016 - 23 mai 2008 à 08:50
Estydral Messages postés 39 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 23 janvier 2016 - 23 mai 2008 à 08:50
A voir également:
- [PhP] MaJ à l'aide d'une liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Google sheet liste déroulante - Accueil - Guide bureautique
- È maj - Guide
- Supprimer liste déroulante excel - Forum Excel
9 réponses
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 16:04
22 mai 2008 à 16:04
t'est sure qu'elle s'appelle bien "liste" ta liste ?
tu passe bien les variables du formulaire par la methode POST ?
parceque d'apres le message $_POST['liste'] n'existe pas
tu passe bien les variables du formulaire par la methode POST ?
parceque d'apres le message $_POST['liste'] n'existe pas
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 16:16
22 mai 2008 à 16:16
<td>
<select name="liste">
<option value=''> - Faîtes votre choix - </option>
<?PHP
// Connexion a la BDD
$link=mysql_connect("localhost","root","")or die("Connexion impossible".mysql_error());
//Selection de la BDD
mysql_select_db("MyBDD")or die("Selection de la base impossible");
// Requête SQL
$query="SELECT nom_actu
FROM ACTUALITE;";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
while ($donnees = mysql_fetch_assoc($result))
{
echo '<option value='. $donnees["nom_actu"] ;
if ( isset ($_POST['Agree']))
{
if ($_POST['liste'] == $donnees["nom_actu"])
{
echo ' selected="selected"' ;
}
}
echo '>'. $donnees["nom_actu"].'</option>' ;
}
// Deconnexion de la BDD
mysql_free_result($result);
mysql_close($link);
?>
</select>
</td>
Désolé pour la longueur, donc sa c'est le code de ma liste déroulante. Elle s'affiche nickel j'ai pas de probleme la dessus :)
<select name="liste">
<option value=''> - Faîtes votre choix - </option>
<?PHP
// Connexion a la BDD
$link=mysql_connect("localhost","root","")or die("Connexion impossible".mysql_error());
//Selection de la BDD
mysql_select_db("MyBDD")or die("Selection de la base impossible");
// Requête SQL
$query="SELECT nom_actu
FROM ACTUALITE;";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
while ($donnees = mysql_fetch_assoc($result))
{
echo '<option value='. $donnees["nom_actu"] ;
if ( isset ($_POST['Agree']))
{
if ($_POST['liste'] == $donnees["nom_actu"])
{
echo ' selected="selected"' ;
}
}
echo '>'. $donnees["nom_actu"].'</option>' ;
}
// Deconnexion de la BDD
mysql_free_result($result);
mysql_close($link);
?>
</select>
</td>
Désolé pour la longueur, donc sa c'est le code de ma liste déroulante. Elle s'affiche nickel j'ai pas de probleme la dessus :)
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 16:22
22 mai 2008 à 16:22
Ouaip donc elle s'appel bien "liste"
Maintenant ton formulaire envoi bien les données en POST ?
<form name="xx" action="yy" method="POST">
Maintenant ton formulaire envoi bien les données en POST ?
<form name="xx" action="yy" method="POST">
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 16:26
22 mai 2008 à 16:26
<div id="profil">
<form name="new_sujet" method="POST">
....
Je n'ai pas d'action, c'est grave docteur? :s
<form name="new_sujet" method="POST">
....
Je n'ai pas d'action, c'est grave docteur? :s
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 16:30
22 mai 2008 à 16:30
Heu oui, comment il sais sur quelle page aller quand tu valide ?
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 16:34
22 mai 2008 à 16:34
Il dois rester sur la même page, j'ai fais comme sa pour mon formulaire d'inscription sa me va bien :)
Je link le code de mon premier textbox que je souhaite mettre a jour en fonction de la liste déroulante 'désolé pour l'encombrement):
<tr>
<td class="largeur_tab">Date (JJ-MM-AAAA):</td><td width=""><input type="text" name="date" size="15px"
<?PHP
// Connexion a la BDD
$link=mysql_connect("localhost","root","")or die("Connexion impossible".mysql_error());
//Selection de la BDD
mysql_select_db("MyBDD")or die("Selection de la base impossible");
// Requête SQL
$query="SELECT date_actu FROM ACTUALITE WHERE nom_actu='".$_POST['liste']."';";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
// Deconnexion de la BDD
mysql_free_result($result);
mysql_close($link);
if (isset($_POST["Agree"]) and !empty($_POST['date']))
echo " value=".$_POST['date'];
?>
></td>
<td>
<?PHP
if (isset($_POST["Agree"]) and empty($_POST['date']))
echo "<font color='red'>Vous n'avez pas saisi la date de l'évènement</font><br/>";
?>
</td>
</tr>
Je link le code de mon premier textbox que je souhaite mettre a jour en fonction de la liste déroulante 'désolé pour l'encombrement):
<tr>
<td class="largeur_tab">Date (JJ-MM-AAAA):</td><td width=""><input type="text" name="date" size="15px"
<?PHP
// Connexion a la BDD
$link=mysql_connect("localhost","root","")or die("Connexion impossible".mysql_error());
//Selection de la BDD
mysql_select_db("MyBDD")or die("Selection de la base impossible");
// Requête SQL
$query="SELECT date_actu FROM ACTUALITE WHERE nom_actu='".$_POST['liste']."';";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
// Deconnexion de la BDD
mysql_free_result($result);
mysql_close($link);
if (isset($_POST["Agree"]) and !empty($_POST['date']))
echo " value=".$_POST['date'];
?>
></td>
<td>
<?PHP
if (isset($_POST["Agree"]) and empty($_POST['date']))
echo "<font color='red'>Vous n'avez pas saisi la date de l'évènement</font><br/>";
?>
</td>
</tr>
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 16:44
22 mai 2008 à 16:44
La premiere fois que tu arrive sur ta page, tu n'a rien selectionné dans la liste donc sa me parrai normal qu'il ne trouve rien dans $_POST['liste']
il faudrai pas proteger ton bloc de code pour ta boite de texte avec un if (isset($_POST['liste']) ?
il faudrai pas proteger ton bloc de code pour ta boite de texte avec un if (isset($_POST['liste']) ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 16:54
22 mai 2008 à 16:54
Avec la protection je n'ai plus le message d'erreur quand j'arrive sur la page, merci beaucoup ^^
Mais cependant l'affichage ne se fait pas, j'ai vérifié tous mes noms de champ et sa m'a l'air bon.. Avec cette méthode l'actualisation des données se fais directement ou avec validation du formulaire? Même avec validation sa n'affiche rien..
Merci beaucoup de t'interesser à ce probleme en tout cas :)
Mais cependant l'affichage ne se fait pas, j'ai vérifié tous mes noms de champ et sa m'a l'air bon.. Avec cette méthode l'actualisation des données se fais directement ou avec validation du formulaire? Même avec validation sa n'affiche rien..
Merci beaucoup de t'interesser à ce probleme en tout cas :)
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 17:01
22 mai 2008 à 17:01
l'actualisation des données ce fais a chaque entrée sur la page, donc directement et apres validation.
C'est pour ça que la premiere fois que t'arrive sur la page $_POST['liste'] est vide, mais la ou c'est pas normal c'est qu'il soit vide apres validation du formulaire
essai de mettre quand même une action a la balise form car c'est pas valide de ne pas en mètre même si sa marche.
Tu met juste action="#".
Si ça ne marche toujours pas, faudrai regarder concretement ce qu'il y a dans ton $_POST
alors au tout debut de ta page fais simplement un
print_r($_POST);
Il va t'afficher tout le contenu de ce tableau de variable donc choisi quelque chose dans la liste, valide et regarde ce qu'il t'ecrit ;)
C'est pour ça que la premiere fois que t'arrive sur la page $_POST['liste'] est vide, mais la ou c'est pas normal c'est qu'il soit vide apres validation du formulaire
essai de mettre quand même une action a la balise form car c'est pas valide de ne pas en mètre même si sa marche.
Tu met juste action="#".
Si ça ne marche toujours pas, faudrai regarder concretement ce qu'il y a dans ton $_POST
alors au tout debut de ta page fais simplement un
print_r($_POST);
Il va t'afficher tout le contenu de ce tableau de variable donc choisi quelque chose dans la liste, valide et regarde ce qu'il t'ecrit ;)
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 17:11
22 mai 2008 à 17:11
J'ai rajouté l'action et le test me dit:
Array ( [liste] => Test [date] => [lien] => [remarque] => [Agree] => Ok )
Je ne sais pas trop a quoi sa correspond je suis niveau débutant :s
Je vais regarder sa tranquille ce soir et je donnerais des nouvelles demain matin je pense :s
Array ( [liste] => Test [date] => [lien] => [remarque] => [Agree] => Ok )
Je ne sais pas trop a quoi sa correspond je suis niveau débutant :s
Je vais regarder sa tranquille ce soir et je donnerais des nouvelles demain matin je pense :s
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
22 mai 2008 à 17:18
22 mai 2008 à 17:18
Il y a bien quelque chose dans "liste" a ce moment la
[liste] => Test
ça signifie que dans $_POST['liste'] il y a "Test"
Donc la requete doit bien s'executer
T'est sur que c'est ça qui pose probleme ?
[liste] => Test
ça signifie que dans $_POST['liste'] il y a "Test"
Donc la requete doit bien s'executer
T'est sur que c'est ça qui pose probleme ?
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
22 mai 2008 à 17:31
22 mai 2008 à 17:31
Je l'ignore :s Il me semble que sa viens du second bout de code (concernant la date) ou il manque quelques chose :s
Estydral
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
23 mai 2008 à 08:50
23 mai 2008 à 08:50
Dsl pour le double post, on ne peut edit que jusque que 60min après ^^
Problème résolu grace à Mimiste :) Merci beaucoup!
N'ayant fait que de l'insertion de données auparavant, je n'avais pas fait le traitement de la donnée...
// Requête SQL
$query="SELECT date_actu FROM ACTUALITE WHERE nom_actu='".$_POST['liste']."';";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
echo " value=".mysql_result($result, 0);
Problème résolu grace à Mimiste :) Merci beaucoup!
N'ayant fait que de l'insertion de données auparavant, je n'avais pas fait le traitement de la donnée...
// Requête SQL
$query="SELECT date_actu FROM ACTUALITE WHERE nom_actu='".$_POST['liste']."';";
$result=mysql_query($query)or die("Erreur lors de la requête :".mysql_error());
echo " value=".mysql_result($result, 0);