Php et les formulaires
Fermé
Steff
-
29 août 2003 à 12:13
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 2 sept. 2003 à 23:43
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 2 sept. 2003 à 23:43
A voir également:
- Php et les formulaires
- Easy php - Télécharger - Divers Web & Internet
- Envoyer les données d'un formulaire html par mail sans php ✓ - Forum PHP
- Expert php pinterest - Télécharger - Langages
- \R php ✓ - Forum PHP
- Php alert ✓ - Forum PHP
7 réponses
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
29 août 2003 à 14:58
29 août 2003 à 14:58
Bonjour Steff
Dans ton exemple la page mo_form.php récupère bien la valeur du champ dans la variable IdLivre qui vaut normalement 2.
L'accès à cette variable peut effectivement se faire via le tableau superglobal $_POST[]
Cependant comme tu utilises des guillemets doubles, PHP opère alors une substitution
Comme PHP (sauf paramètrage contraire) a également créé la variable $IdLivre
$_POST["$IdLivre"] équivaut à $_POST["2"] qui lui n'est peut être pas défini.
Pour récuperer le contenu de IdLivre tu peux écrire :
$_POST[IdLivre] ou $_POST["IdLivre"] ou encore $_POST['IdLivre'] ou utiliser directement $IdLivre (moins sécurisé).
Ex :
Tu noteras que les 2 dernières syntaxes ne renvoient rien !
Nota : seuls les guillemets doubles (") entrainent la substitution.
Avec des guillemets simples (') la chaîne est traitée telle quelle.
@+
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]
Dans ton exemple la page mo_form.php récupère bien la valeur du champ dans la variable IdLivre qui vaut normalement 2.
L'accès à cette variable peut effectivement se faire via le tableau superglobal $_POST[]
Cependant comme tu utilises des guillemets doubles, PHP opère alors une substitution
Comme PHP (sauf paramètrage contraire) a également créé la variable $IdLivre
$_POST["$IdLivre"] équivaut à $_POST["2"] qui lui n'est peut être pas défini.
Pour récuperer le contenu de IdLivre tu peux écrire :
$_POST[IdLivre] ou $_POST["IdLivre"] ou encore $_POST['IdLivre'] ou utiliser directement $IdLivre (moins sécurisé).
Ex :
<html> <body> $IdLivre=<? echo $IdLivre; ?><br> $IdLivre=<? echo "$IdLivre"; ?><br> $IdLivre=<? echo '$IdLivre'; ?><br> $_POST[IdLivre]=<? echo $_POST[IdLivre]; ?><br> $_POST['IdLivre']=<? echo $_POST['IdLivre']; ?><br> $_POST["IdLivre"]=<? echo $_POST["IdLivre"]; ?><br> $_POST["$IdLivre"]=<? echo $_POST["$IdLivre"]; ?><br> $_POST['$IdLivre']=<? echo $_POST['$IdLivre']; ?><br> </body> </html>
Tu noteras que les 2 dernières syntaxes ne renvoient rien !
Nota : seuls les guillemets doubles (") entrainent la substitution.
Avec des guillemets simples (') la chaîne est traitée telle quelle.
@+
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]
Utilisateur anonyme
29 août 2003 à 15:04
29 août 2003 à 15:04
Salut,
Le Input type=submit manquant, c'est volontaire ?
Kalamit,
Parle à ma culasse, mon carter est malade. :)
<form action="mo_form.php" method="post" name="EnvoForm"> <input type="Hidden" name="IdLivre" value="2"> </form>
Le Input type=submit manquant, c'est volontaire ?
Kalamit,
Parle à ma culasse, mon carter est malade. :)
Bonjour
merci pour les réponses.
voici le résultat de
<html>
<body>
$IdLivre=<? echo $IdLivre; ?><br>
$IdLivre=<? echo "$IdLivre"; ?><br>
$IdLivre=<? echo '$IdLivre'; ?><br>
$_POST[IdLivre]=<? echo $_POST[IdLivre]; ?><br>
$_POST['IdLivre']=<? echo $_POST['IdLivre']; ?><br>
$_POST["IdLivre"]=<? echo $_POST["IdLivre"]; ?><br>
$_POST["$IdLivre"]=<? echo $_POST["$IdLivre"]; ?><br>
$_POST['$IdLivre']=<? echo $_POST['$IdLivre']; ?><br>
</body>
</html>
=>
$IdLivre=
$IdLivre=
$IdLivre=$IdLivre
$_POST[IdLivre]=
$_POST['IdLivre']=
$_POST["IdLivre"]=
$_POST["$IdLivre"]=
$_POST['$IdLivre']=
Quant au fait qu'il n'y ait pas de submit : je submit le formulaire par un javascript car je donne via le javascript la valeur à IdLivre.
Ayez pitié, aidez un mec désespéré.
Merci
Cordialement
Steff
merci pour les réponses.
voici le résultat de
<html>
<body>
$IdLivre=<? echo $IdLivre; ?><br>
$IdLivre=<? echo "$IdLivre"; ?><br>
$IdLivre=<? echo '$IdLivre'; ?><br>
$_POST[IdLivre]=<? echo $_POST[IdLivre]; ?><br>
$_POST['IdLivre']=<? echo $_POST['IdLivre']; ?><br>
$_POST["IdLivre"]=<? echo $_POST["IdLivre"]; ?><br>
$_POST["$IdLivre"]=<? echo $_POST["$IdLivre"]; ?><br>
$_POST['$IdLivre']=<? echo $_POST['$IdLivre']; ?><br>
</body>
</html>
=>
$IdLivre=
$IdLivre=
$IdLivre=$IdLivre
$_POST[IdLivre]=
$_POST['IdLivre']=
$_POST["IdLivre"]=
$_POST["$IdLivre"]=
$_POST['$IdLivre']=
Quant au fait qu'il n'y ait pas de submit : je submit le formulaire par un javascript car je donne via le javascript la valeur à IdLivre.
Ayez pitié, aidez un mec désespéré.
Merci
Cordialement
Steff
Utilisateur anonyme
29 août 2003 à 15:20
29 août 2003 à 15:20
Quant au fait qu'il n'y ait pas de submit : je submit le formulaire par un javascript car je donne via le javascript la valeur à IdLivre.
Bah, il est surement la ton probleme !
Mets un submit bidon pour tester. Tu verras si ca fonctionne ou pas. :)
Kalamit,
Parle à ma culasse, mon carter est malade. :)
Bah, il est surement la ton probleme !
Mets un submit bidon pour tester. Tu verras si ca fonctionne ou pas. :)
Kalamit,
Parle à ma culasse, mon carter est malade. :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Un miracle de la science, sans doute, désormais avec $_POST['IdLivre'] je récupère ma valeur. Merci à tous pour votre aide.
Merci
Cordialement
Un miracle de la science, sans doute, désormais avec $_POST['IdLivre'] je récupère ma valeur. Merci à tous pour votre aide.
Merci
Cordialement
Bonjour
J'ai un petit formulaire. Je récupère bien mes données.
Sauf que lorsque j'écris un contenu du genre Jungle's Book dans ma page récapitulative j'obtiens Jungle\'s Book et quand je repasse de ma page récapitulative à mon formulaire j'obtiens Jungle\\\'s Book. Avant que je me tire une balle, quelqu'un peut-il m'aider?
Merci
Cordialement
Steff
J'ai un petit formulaire. Je récupère bien mes données.
Sauf que lorsque j'écris un contenu du genre Jungle's Book dans ma page récapitulative j'obtiens Jungle\'s Book et quand je repasse de ma page récapitulative à mon formulaire j'obtiens Jungle\\\'s Book. Avant que je me tire une balle, quelqu'un peut-il m'aider?
Merci
Cordialement
Steff
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
2 sept. 2003 à 23:43
2 sept. 2003 à 23:43
Bonsoir Steff,
Normal car PHP "escape" les variables passées par GET ou POST
(du moins lorsque le paramètre magic_quotes_gpc est activé , ce qui est le cas par défaut : à vérifier cependant)
Bref si on passe une variable nommée demo contenant "Jungle's book"
alors
<?echo $demo; ?> affiche Jungle\'s book
Pour avoir un affichage correcte il suffit d'enlever les slashs :
<? echo stripslashes($demo); ?> affiche Jungle's book
Faire également attention à ce que les variables ne contiennent pas non plus de code HTML (sauf si c'est voulu) !
@+
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]
Normal car PHP "escape" les variables passées par GET ou POST
(du moins lorsque le paramètre magic_quotes_gpc est activé , ce qui est le cas par défaut : à vérifier cependant)
Bref si on passe une variable nommée demo contenant "Jungle's book"
alors
<?echo $demo; ?> affiche Jungle\'s book
Pour avoir un affichage correcte il suffit d'enlever les slashs :
<? echo stripslashes($demo); ?> affiche Jungle's book
Faire également attention à ce que les variables ne contiennent pas non plus de code HTML (sauf si c'est voulu) !
@+
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]