fonction header Location : sur Url

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fonction header Location : sur Url

Re: fonction header Location : sur Url

par energie13 » 16 févr. 2010, 16:50

Merci :)
Ca fonctionne désormais. Encore merci
Bonne fin de journée

Re: fonction header Location : sur Url

par AB » 16 févr. 2010, 15:18

En même temps, si tu n'as pas d'autres variables dans l'url à reporter dans ta page d'index, pas besoin d'analyser l'url donc tu peux faire simplement
$updateGoTo = "index.php?action=6";
header(sprintf("Location: %s", $updateGoTo));

Re: fonction header Location : sur Url

par stealth35 » 16 févr. 2010, 15:12

parse_str($_SERVER['QUERY_STRING'],  $query);
$query['action'] = 7;
header(sprintf("Location: index.php?%s", http_build_query($query)));

Re: fonction header Location : sur Url

par energie13 » 16 févr. 2010, 14:10

Je viens d'essayer la fonction location a l'air de marcher mais me renvoie vers une page 404. comme si mon url etait mauvaise.
Je dois peut etre rajouter un parametre supplémentaire ? mon but est d'aller a l'url index.php?action=6.
Mais l'update de l'enregistrement a bien fonctionné. Je galère :(

Re: fonction header Location : sur Url

par stealth35 » 16 févr. 2010, 10:57

normal c'est pas bon, faut que tu fasse comme j'ai mis

Re: fonction header Location : sur Url

par energie13 » 16 févr. 2010, 09:22

Merci pour la réponse :)
J'ai testé avec le code :

Code : Tout sélectionner

$updateGoTo['action'] = 6; if (isset($_SERVER['QUERY_STRING'])) { $updateGoTo .= parse_str($_SERVER['QUERY_STRING'], $updateGoTo); } header(sprintf("Location: %s", http_build_query($updateGoTo))); }
et j'ai une erreur sous firefox (pas sous ie 6)
Warning: http_build_query() [function.http-build-query]: Parameter 1 expected to be Array or Object. Incorrect value given. in /var/www/html/MonAppli/Appli/MODULES/modifTest.php on line 74
la ligne 74 correspond a l'header. Il doit me manquer un parametre
et lorsque je colle directement le code. Plus d'erreur mais une page 404 not found.
Je ne comprends pas :( je continue a chercher depuis hier soir... Merci encore pour ta reponse

Re: fonction header Location : sur Url

par stealth35 » 15 févr. 2010, 12:29

avec parse_str + http_build_query
parse_str($_SERVER['QUERY_STRING'], $query);
$query['action'] = 7;
header(sprintf("Location: %s", http_build_query($query)));

fonction header Location : sur Url

par energie13 » 15 févr. 2010, 12:21

Bonjour,
Je galère sur un truc tout con, je m'explique :
J'utilise une adresse :
http://monserveur/monappli/index.php?action=6&test=34

Je mets a jour mon enregistrement puis demande de retourner a la page d'accueil :

Code : Tout sélectionner

$updateGoTo = "index.php?action=7"; if (isset($_SERVER['QUERY_STRING'])) { $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?"; $updateGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $updateGoTo)); }
comme je suis deja dans index.php
l'url se change en
http://monserveur/monappli/index.php?ac ... =7&test=34
(il me rajoute "action=6" du coup ma page ne change pas. :(
Je ne vois pas trop comment faire pour le coup puisque je passe toujours par ma page index.php pour charger les différentes modules.
Besoin de votre aide.
Je vous remercie par avance