Aide en php

caroline -  
ceddec Messages postés 149 Statut Membre -
J'aimerai à partir d'un test revenir sur la page précédente, comment puis-je faire?

$e = $_POST["reponse"];
if (empty($e))
{
RETOUR SUR LA PAGE PRECEDENTE;
exit();
}


Merci
A voir également:

6 réponses

Erdnax Messages postés 2279 Statut Contributeur 497
 
Salut,

Je te conseil de placer ce code :

header("Location:".$_SERVER['HTTP_REFERER']);

@+
0
caroline
 
J'ai essayé mais j'ai ce message


Warning: Cannot modify header information - headers already sent by (output started at f:\easyphp1-8\www\p01\rep.php:3) in f:\easyphp1-8\www\p01\rep.php on line 30

Peux-tu m'aider?
0
Babylontiti Messages postés 59 Statut Membre 28
 
Salut Caroline,

J'ai essayé avec du javascript et ça fonctionne bien chez moi.
Voici un code qui me semble correct:

<?PHP
$e = $_POST['reponse']; 
if(empty($e)){ 
 echo("<SCRIPT LANGUAGE = \"JavaScript\">window.history.back(-1);</SCRIPT>");
exit(); 
}
?>


Et voilou, alors ça fonctionne ? ;-)
@+
0
steve
 
Slt. Moi j'avais besoin de la meem fonction. Ta fonction marche mais le probleme est qu'il revient directement a la page precedente. Tu ne pourrais pas me dire comment faire en sorte que la page d'erreur s'affiche pendant quelques secondes ?
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
0
ceddec Messages postés 149 Statut Membre 82
 
Bonjour,

Je vous préviens qu'il n'est pas conseiller d'utiliser la variable $_SERVER['HTTP_REFERER'] parce qu'elle n'est pas fiable (j'ai vu ça sur http://www.nexen.net/docs/php/annotee/reserved.variables.server.php?lien=http_referer )

Pour faire sans, voilà ce que je propose :
Dans chaque page, ajouter cette ligne
$_SESSION['precedent']=$_SERVER['SCRIPT_NAME'];

Ainsi lorsque l'on veut retourner à la page précédente, il suffit de rediriger sur $_SESSION['precedent'] en utilisant le meta refresh.

Le source devient :
$e = $_POST["reponse"];
if (empty($e))
{
    $pre = $_SESSION['precedent'] ; 
    echo "<meta http-equiv=\"Refresh\" content=\"0;URL=$pre\">";
} 


Le 0 correspond au temps d'attente (en seconde) avant la redirection
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
styvou
 
j'ai esssaye ton code mais il me remet en boucle la meme page en precedent. Tu saus d'ou peux venir l'erreur ?

Et pour le code javascript, y a t il moyuen d'ajouter un nombre de secondes avant l'affichage de la page precedente ? Merci pr vos reponses
0
ceddec Messages postés 149 Statut Membre 82
 
Qu'entend tu par il me remet en boucle la meme page en precedent?

Parce que normalement il n'y a qu'une redirection, cela ne devrait pas boucler.



Par contre pour le javascript, il y a le commande setTimeout() qui permet de lancer la redirection au bout de quelques milisecondes. Plus de détails sur cette fonctions ici : http://www.le-webmestre.net/web/cours/javascript/cours_21.php
0
styvou
 
et bien il redirige vers la meem page en fait :s
0
ceddec Messages postés 149 Statut Membre 82
 
tu as bien mis $_SESSION['precedent']=$_SERVER['SCRIPT_NAME']; sur toutes les pages?

Autre point sur lequel je suis pri d'un doute : Si tu utilise des frames la valeur de $_SERVER['SCRIPT_NAME']; peut être faussé (c'est à vérifier en faisant un echo sur chaque page de la valeur)
0