Création
d'entreprise
Posez votre question Signaler

PHP: faire un header() de la page en cours

Nico - Dernière réponse le 26 janv. 2011 à 13:17
Bonjour,
Je souhaiterais pouvoir recharger ma page en cours (après clique d'un utilisateur) + exécuter une partie de code.
J'avais pensé à faire :

-----------------------------------------------
// ICI
// ma partie de code à exécuter
// ...

header("Location: $pageencours");
-----------------------------------------------

Mais comme puis-je récupérer la valeur de l'url correspond à ma page en cours ($pageencours) ???

Merci pour votre aide.
Lire la suite 

PHP: faire un header() de la page en cours »

5 réponses
Réponse
+4
moins plus
Houla, me suis planté. Le REFERER est la page de laquelle tu proviens. Pas ta page actuelle.

En fait, pour bien faire, il faudrait faire:
		<?php 
		if ($_SERVER['QUERY_STRING'] != "") {
		    $redirection = $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
		}
		else {
			$redirection = $_SERVER['PHP_SELF'];
		}
		header("Location: $redirection"); 

		?>

Kalamit,
Parle à ma culasse, mon carter est malade. :)
Ajouter un commentaire
Réponse
+1
moins plus
kalamit, il est très agréable de trouver de temps à autre de belle réponses dignent de ce nom sur les forum. JE me suis permis de le modifier un tout petit peu pour plus de clarté.

Bonne continuation

<?php

$_SERVER['QUERY_STRING'] != "" ? $redirection = $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'] : $redirection = $_SERVER['PHP_SELF'];

header("Location: ".$redirection."");

?>
Ajouter un commentaire
Réponse
+0
moins plus
Salut,
Tu peux te servir de $_SERVER['PHP_SELF'].

Kalamit,
Parle à ma culasse, mon carter est malade. :)
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour ta réponse Kalamit,
J'ai testé, mais j'ai l'impression que le navigateur n'arrive pas à charger la page, ça rame... Toutefois, avec $_SERVER['HTTP_REFERER'], j'ai presque ce que je veux, mon code s'éxécute et je charge mon index après... (presque ça, sauf que je voudrais charger ma page en cours)...
Pourquoi j'ai rien avec :
header("Location: ".$_SERVER['PHP_SELF']);

Merci
Ajouter un commentaire
Réponse
+0
moins plus
Re.
C'est quoi l'adresse de ta page ?
Admettons que l'adresse de ta page soit http://tonsite.com/page.php
Dans ce cas:
$_SERVER['HTTP_REFERER'] = http://tonsite.com
$_SERVER['PHP_SELF'] = ./page.php

Utilise tu des pseudo frames ? Passes tu des variables dans l'URL ? Si tu réponds oui à une de ces deux questions, ca peut etre plus dur... :)

Fais afficher ton $_SERVER['PHP_SELF'] pour voir ce qu'il y a dedans.

Kalamit,
Parle à ma culasse, mon carter est malade. :)
Ajouter un commentaire
Ce document intitulé « PHP: faire un header() de la page en cours » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?