Page 1 sur 1

Relancer une page en conservant les valeurs des variables

Posté : 04 nov. 2008, 11:43
par dimi3
Bonjour,

Une fois le formulaire rempli, je souhaiterais relancer la page afin que le premier code soit traité. Que dois-je écrire derrière le mot action= du formulaire ?

Code : Tout sélectionner

if($axion=="GO") { for($t=1;$n<=$nmessages;$n++) { $choix = "c".$n; if(@ $$choix != "1") { ...

Code : Tout sélectionner

print("<form name = \"formulaire\" method=\"post\" action=\" QUE DOIS-JE METTRE ICI ?\"> \n"); for($n=$nmessages;$n>=1;$n--) { print("<input type=\"checkbox\" name=\"c".$n."\" value=\"1\"> \n"); } print("<input type=\"hidden\" name=\"axion\" value=\"GO\"> \n"); print("<input type=\"submit\" value=\"Supprimer\" name=\"BOUTON\"> \n"); ...
Je vous remercie de votre aide.

Posté : 04 nov. 2008, 12:33
par stopher
Salut ,

Si tu veux re pointer sur ton ta meme page , tu peux utiliser la variable : $PHP_SELF

Mais je ne suis pas sure de bien saisir ce que tu veux faire ..

Posté : 04 nov. 2008, 15:37
par dimi3
Je vous remercie de votre réponse. Oui, je veux repointer sur la même page pour traiter les variables de mon formulaire. Comment s'utilise cette variable $PHP_SELF ?

Ce code ne fonctionne pas :

Code : Tout sélectionner

print("<form name = \"formulaire\" method=\"post\" action=\" <?php $PHP_SELF; ?>\">\n");
On me renvoie l'erreur :

Notice: Undefined variable: PHP_SELF in line ...

Merci encore.

Posté : 04 nov. 2008, 15:46
par AB
Je vous remercie de votre réponse. Oui, je veux repointer sur la même page pour traiter les variables de mon formulaire. Comment s'utilise cette variable $PHP_SELF ?

Ce code ne fonctionne pas :

Code : Tout sélectionner

print("<form name = "formulaire" method="post" action=" <?php $PHP_SELF; ?>">\n");
On me renvoie l'erreur :

Notice: Undefined variable: PHP_SELF in line ...

Merci encore.
C'est une variable de serveur, la bonne syntaxe pour y accéder est donc
$_SERVER['PHP_SELF']
Cela dit tu pourrais tout aussi bien te contenter de action = "#"

Posté : 04 nov. 2008, 15:49
par stopher
Oups .. désolé pour mon erreur sur la syntaxe de cette variable .. :oops:

Cela ne se reproduira plus c promis .. :roll:

Posté : 04 nov. 2008, 16:20
par albat
"Ce code ne fonctionne pas ?" Et pour cause !

:idea: Si pour écrire ton message dans ce forum,
tu utilises la balise
 au lieu de la balise [CODE ],
la coloration syntaxique te montrera que quelque chose ne va pas :

[php]print("<form name = \"formulaire\" method=\"post\" action=\" <?php $PHP_SELF; ?>\">\n");
:!: Tu es déjà dans un script PHP - puisque tu utilises la fonction print() -
et tu ouvres de nouveau un script par le conteneur <?php :non:
(dans lequel tu as oublié un echo et qui ne fonctionnerait donc pas de toute manière). :-*

Tu peux aussi améliorer la lisibilité de ton code,
en écrivant par exemple :
echo '<form name="formulaire" method="post" action="'.$_SERVER['PHP_SELF'].'">'."\n"; 

Posté : 04 nov. 2008, 20:04
par dimi3
Merci mille fois à tous. Tout marche à merveille.