[RESOLU] Retour à une page après formulaire ne fonctionne pas.

Eléphant du PHP | 89 Messages

20 juil. 2015, 16:21

Bonjour,

j'utilise le code ci-dessous pour renvoyer à une page de merci après avoir complété un formulaire de contact.

Code : Tout sélectionner

<?php $msg = "Nom:\t$_POST[champ1]\n"; $msg .= "Prenom:\t$_POST[champ2]\n"; $msg .= "Adresse:\t$_POST[champ3]\n"; $msg .= "Ville:\t$_POST[champ4]\n"; $msg .= "CP:\t$_POST[champ5]\n"; $msg .= "Pays:\t$_POST[champ6]\n"; $msg .= "Province:\t$_POST[champ7]\n"; $msg .= "Telephone:\t$_POST[champ8]\n"; $msg .= "E-Mail de contact:\t$_POST[zone_email]\n"; $msg .= "Commentaires:\t$_POST[zone_texte]\n"; $recipient = "[email protected]"; $subject = "Formulaire de reservation"; $mailheaders = "From: $_POST[zone_email]\n"; $mailheaders .= "Reply-To: $_POST[zone_email]\n\n"; mail($recipient, $subject, $msg, $mailheaders); if($envoi) header("Location: http://www.auxcosmos.be/merci.html");
Le formulaire est bien reçu, mais la page merci.html ne s'affiche pas, mais une page blanche.

J'utilise le même code sur une autre site chez le même hébergeur et cela fonctionne ...
Serait-ce lié à la version de php?
Ci-après la version de php: ici

Merci pour votre aide.

Mammouth du PHP | 688 Messages

20 juil. 2015, 16:28

$envoi n'est pas défini, je mettrais juste :
header("Location: http://www.auxcosmos.be/merci.html");

Eléphant du PHP | 243 Messages

20 juil. 2015, 16:41

Normalement, si tu arrives au niveau de ce code, c'est que tout a bien fonctionné. Il est donc inutile de chercher à mettre une sécurité avec un $envoi qui, comme l'a dit tof73, n'est même pas déclaré.
Un simple header devrait faire l'affaire.
header("Location: http://www.auxcosmos.be/merci.html" );
"Nos études ont montré que la probabilité qu’un programme corrigé fonctionne comme avant la correction est seulement de cinquante pour cent"
~~Lorenzo Strigini

Eléphant du PHP | 89 Messages

20 juil. 2015, 16:47

Je viens de modifier et le résultat est le même ...
Page blanche figée sur ceci

Eléphant du PHP | 243 Messages

20 juil. 2015, 16:58

Header est assez chiant à utiliser.
Je t'invite à regarder ce lien http://www.un-programmeur-php.ca/articles/header.php
Si vraiment tu n'y arrives pas, envois nous les logs d'erreurs que php te retourne.
"Nos études ont montré que la probabilité qu’un programme corrigé fonctionne comme avant la correction est seulement de cinquante pour cent"
~~Lorenzo Strigini

Eléphant du PHP | 89 Messages

20 juil. 2015, 17:06

Cela fonctionne maintenant (il avait <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">) avant la balise <?php

Merci pour votre aide.