Relance une page

Résolu
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 - 6 août 2007 à 18:12
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 - 7 août 2007 à 11:44
Bonjour,

Alors voila j'ai un petit bouton:




cursor:</gras>hand;" value"Cr§Ûer le rapport" name'enreg'>

Ce bouton lance un code php qui marche tr¨¨s bien et je voudrais juste apr¨¨s la fin de mon code que ma page soit redirig¨¦ vers une autre.
Enfaite quand mon formulaire est fini et enregistr¨¦ je voudrai le faire retourner sur l'accueil.

Comment je peu faire?





<?php

if(isset
($_POST
[ 'enreg'
]))

{

if($_POST
['test'
] ==""
)

{

print('
Un champ n\'a pas §Ût§Û renseign§Û.
'
);

}

else

{

include'scripts\connect.php'
;

....

}

?>

Merci d'avance de vos r¨¦ponses.

7 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
6 août 2007 à 18:24
Hello,

si tu ton formulaire a bien été renseigné, tu renvoies grâce à la fonction header("Location: url");
Attention juste à ne rien envoyer du tout au navigateur avant (aucun caractère, rien).

à+

http://fr.php.net/header
3
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
7 août 2007 à 11:19
Oui mais dans mon cas j'en envoie.

donc pour la redirection j'ai opté pour et sa marche:
print
("<script language = "JavaScript">"
);

print
("location.href = 'accueil.php';"
);

print
("</script>"
);

Merci.
3
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
7 août 2007 à 09:26
Oui c'est une bonne idée d'utiliser le header merci!
Mais il me dit sa que j'execute et sa ne change pas ma page.
Dans mon ldap.php il n'y a pas de header...

Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-7\www\workflow\scripts\ldap.php:50) in c:\program files\easyphp1-7\www\workflow\nouveau.php on line 253
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
7 août 2007 à 10:46
Attention juste à ne rien envoyer du tout au navigateur avant (aucun caractère, rien).



Même pas un espace, rien ne doit être envoyé. Donc ta page doit commencer immédiatement pas <?php et n'avoir aucun echo avant le header. cf http://fr.php.net/header
à+
0

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

Posez votre question
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
7 août 2007 à 10:59
Arf ok j'avais mal compris.
J'ai tout une suite de traitement qui se fait, je met a jour des données dans ma base de données, j'accede à des fichier, etc... mais au final je voudrais redirigé une fois les traitements fini.
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
7 août 2007 à 11:02
Tu fais ce que tu veux, mais pour que le header marche, pas d'envoi de html, c'est tout...
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
7 août 2007 à 11:44
Tu peux faire des traitements sans envoyer de HTML, et d'après ce que tu dis, tu veux une redirection instantanée (pas de setTimeout javascript ?), donc pourquoi ne pas utiliser une redirection par header bien plus propre ??
0
Rejoignez-nous