par
Fre3z69 » 28 janv. 2013, 08:49
Salutation,
Je poste ce message lié avec
celui-ci, et ce à cause de problèmes avec les headers.
Il ne faut rien faire afficher avant l'envoi d'un header, dans le cas contraire cela affiche ce message d'erreur.
Sinon, tu devrais éviter absolument de faire des redirections javascript générées par du code php. Utilses plutôt la fonction php : header('Location:monfichier.php');
Concernant les pb de header dans 99% des cas c'est que as mal organisé ton code (en faisant afficher quelque chose avant l'envoi d'un header). Il vaut mieux avoir une bonne organisation du code plutôt que d'essayer de rattraper l'affaire avec un echo javascript qui est une horreur de plus.
Pour une redirection php c'est un header location suivi d'un exit (pour être certain que le code suivant ne sera pas exécuté). Si tu veux aller vers index.php c'est donc
header('Location: index.php');
exit;
Voici ce que j'ai fait, lors de la validation de l'envoie d'un message:
sucess($lang_succes_mp);
echo'<script type="text/javascript">setTimeout(function(){window.location.href = "message";},2000);</script>';
Et voici le soucis qui ne fonctionne pas, vu (je pense) que j'affiche un message de succès (enfin en production)
header("Refresh : 2; url:./");
sucess($lang_succes_mp);
Avec ce code, la redirection ne s’effectue pas, alors que j'ai biens mit le header avant l'affichage de la page.
Comment ce fait t'il que cela ne fonctionne pas?
Merci beaucoup.
Cordialement