[2ème postage car semble pas être arrivé la première fois]
Bonsoir,
Je vais essayer d'être clair.
J'ai une page, appelée avec des paramètres dans l'url, ex :
http://monsite/test3.php?param=test&...
Dans cette page, j'ai un formulaire, avec action="".
Je voudrais que lorsque l'on valide ce formulaire, certains des paramètres
de la première url ne soient pas transportés.
J'ai essayé en modifiant les $_SERVER["REQUEST_URI"] et
$_SERVER["QUERY_STRING"] mais malgré tout, ces paramètres sont quand même
balancé dans l'url.
Ex :
------------ script test3.php ------------
<?php
echo "Avant traitement: <br>";
echo "REQUEST_URI:".$_SERVER["REQUEST_URI"]."<br>";
echo "QUERY_STRING:".$_SERVER["QUERY_STRING"]."<br>";
$_SERVER["REQUEST_URI"] = preg_replace("|[?&]param=[^&]*|","",$_SERVER["REQUEST_URI"]);
$_SERVER["QUERY_STRING"] = preg_replace("|param=[^&]*|","",$_SERVER["QUERY_STRING"]);
echo "Après traitement: <br>";
echo "REQUEST_URI:".$_SERVER["REQUEST_URI"]."<br>";
echo "QUERY_STRING:".$_SERVER["QUERY_STRING"]."<br>";
echo '
<form method="post" action="test3.php" id="form_identif" >
<input type="submit" id="bouton" name="bouton" value="bouton" />
</form>
';
?>
-----------------------------------------------------------
Je veux conserver certains de ces paramètres afin d'affiner le traitement
des cas particuliers d'erreur, je passe les détails.
Certes, je peux faire le traitement au moment d'afficher le formulaire, et
indiquer un "action=" correct, mais ça impose de le faire dans chaque page
alors qu'ici, ça serait mon module de gestion de session qui ferait
systématiquement le travail.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
KEvin
Dans un message précédent Christophe PEREZ nous a informé que
Je vais essayer d'être clair.
tant mieux je vais faire mon possible aussi ...
J'ai une page, appelée avec des paramètres dans l'url, ex : http://monsite/test3.php?param=test&...
Dans cette page, j'ai un formulaire, avec action="". Je voudrais que lorsque l'on valide ce formulaire, certains des paramètres de la première url ne soient pas transportés.
la seule solution est de preciser explicitement le contenu de action="" en retirant les parametres GET qui te genent
J'ai essayé en modifiant les $_SERVER["REQUEST_URI"] et $_SERVER["QUERY_STRING"] mais malgré tout, ces paramètres sont quand même balancé dans l'url.
c'est normal ce qu'il y a dans serveur n'a d'interet qu'en lecture : il s'agit de variables initialise par le serveur web a l'attention de php (informations sur la requete ,la connexion, le navigateur ...) ce n'est la qu'a titre informatif (tout comme _GET, _POST, _REQUEST et _COOKIE, _ENV je sais pas jamais utilise...)
Je veux conserver certains de ces paramètres afin d'affiner le traitement des cas particuliers d'erreur, je passe les détails.
Certes, je peux faire le traitement au moment d'afficher le formulaire, et indiquer un "action=" correct, mais ça impose de le faire dans chaque page alors qu'ici, ça serait mon module de gestion de session qui ferait systématiquement le travail.
si ce travail peut etre systematique rien ne t'empeche d'appeler une fonction qui te cree le action correct, c'est le mieux que tu pourras avoir !
-- KEvin
Dans un message précédent Christophe PEREZ nous a informé que
Je vais essayer d'être clair.
tant mieux je vais faire mon possible aussi ...
J'ai une page, appelée avec des paramètres dans l'url, ex :
http://monsite/test3.php?param=test&...
Dans cette page, j'ai un formulaire, avec action="".
Je voudrais que lorsque l'on valide ce formulaire, certains des paramètres
de la première url ne soient pas transportés.
la seule solution est de preciser explicitement le contenu de action=""
en retirant les parametres GET qui te genent
J'ai essayé en modifiant les $_SERVER["REQUEST_URI"] et
$_SERVER["QUERY_STRING"] mais malgré tout, ces paramètres sont quand même
balancé dans l'url.
c'est normal ce qu'il y a dans serveur n'a d'interet qu'en lecture : il
s'agit de variables initialise par le serveur web a l'attention de php
(informations sur la requete ,la connexion, le navigateur ...) ce n'est
la qu'a titre informatif (tout comme _GET, _POST, _REQUEST et _COOKIE,
_ENV je sais pas jamais utilise...)
Je veux conserver certains de ces paramètres afin d'affiner le traitement
des cas particuliers d'erreur, je passe les détails.
Certes, je peux faire le traitement au moment d'afficher le formulaire, et
indiquer un "action=" correct, mais ça impose de le faire dans chaque page
alors qu'ici, ça serait mon module de gestion de session qui ferait
systématiquement le travail.
si ce travail peut etre systematique rien ne t'empeche d'appeler une
fonction qui te cree le action correct, c'est le mieux que tu pourras
avoir !
Dans un message précédent Christophe PEREZ nous a informé que
Je vais essayer d'être clair.
tant mieux je vais faire mon possible aussi ...
J'ai une page, appelée avec des paramètres dans l'url, ex : http://monsite/test3.php?param=test&...
Dans cette page, j'ai un formulaire, avec action="". Je voudrais que lorsque l'on valide ce formulaire, certains des paramètres de la première url ne soient pas transportés.
la seule solution est de preciser explicitement le contenu de action="" en retirant les parametres GET qui te genent
J'ai essayé en modifiant les $_SERVER["REQUEST_URI"] et $_SERVER["QUERY_STRING"] mais malgré tout, ces paramètres sont quand même balancé dans l'url.
c'est normal ce qu'il y a dans serveur n'a d'interet qu'en lecture : il s'agit de variables initialise par le serveur web a l'attention de php (informations sur la requete ,la connexion, le navigateur ...) ce n'est la qu'a titre informatif (tout comme _GET, _POST, _REQUEST et _COOKIE, _ENV je sais pas jamais utilise...)
Je veux conserver certains de ces paramètres afin d'affiner le traitement des cas particuliers d'erreur, je passe les détails.
Certes, je peux faire le traitement au moment d'afficher le formulaire, et indiquer un "action=" correct, mais ça impose de le faire dans chaque page alors qu'ici, ça serait mon module de gestion de session qui ferait systématiquement le travail.
si ce travail peut etre systematique rien ne t'empeche d'appeler une fonction qui te cree le action correct, c'est le mieux que tu pourras avoir !
-- KEvin
Christophe PEREZ
Le Sat, 25 Oct 2003 11:02:27 +0000, KEvin a écrit:
la seule solution est de preciser explicitement le contenu de action="" en retirant les parametres GET qui te genent
C'est effectivement la solution que j'utilise pour l'instant.
c'est normal ce qu'il y a dans serveur n'a d'interet qu'en lecture :
Je l'avais quelque peu soupçonné :-)
si ce travail peut etre systematique rien ne t'empeche d'appeler une fonction qui te cree le action correct, c'est le mieux que tu pourras avoir !
C'est exactement ce que j'ai utilisé comme solution en attendant d'avoir votre avis. Donc, cette solution restera définitive :-)
Merci de m'avoir éclairé/confirmé dans ma démarche.
-- Christophe PEREZ Écrivez moi sans _faute !
Le Sat, 25 Oct 2003 11:02:27 +0000, KEvin a écrit:
la seule solution est de preciser explicitement le contenu de action=""
en retirant les parametres GET qui te genent
C'est effectivement la solution que j'utilise pour l'instant.
c'est normal ce qu'il y a dans serveur n'a d'interet qu'en lecture :
Je l'avais quelque peu soupçonné :-)
si ce travail peut etre systematique rien ne t'empeche d'appeler une
fonction qui te cree le action correct, c'est le mieux que tu pourras
avoir !
C'est exactement ce que j'ai utilisé comme solution en attendant d'avoir
votre avis.
Donc, cette solution restera définitive :-)
Merci de m'avoir éclairé/confirmé dans ma démarche.