sab
2009-03-20 11:10:16 UTC
Bonjour et d'avance merci:
J'ai un formulaire que j'envoie par PHP mail()
mon formulaire commence bien evidemment par:
<form method="post" action="envoi.php">
Ci dessous le code de: ENVOI.PHP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title>envoi.php</title>
</head>
<body>
<?php
// récuperation des variables provenant du formulaire
$prenomnom = $_POST['T1'];
$email = $_POST['T4'];
$qualite = $_POST['T2'];
$adresse = $_POST['T3'];
$telephone = $_POST['T5'];
$mobile = $_POST['T6'];
//E-mail auquel sera envoyé le formulaire
$destinataire = '***@club-internet.fr';
//sujet du mail envoyé
$sujet = 'Formulaire d'inscription';
//test pour vérifier que les champs sont bien tous remplis !!
if( !empty($prenomnom) && !empty($email) && !empty($adresse) ){
// création du message, les \n permettent de faire un saut de ligne
$message = "Une réponse est parvenue sur le
site\n\nNom:\n$prenomnom\n\nEmail:\n$email\n\nQualité:\n$qualite
\n\nAdresse:\n$adresse\n\nTéléphone:\n$telephone\n\nMobile:\n$mobile";
// On envoi le mail
if( mail($destinataire, $sujet, $message, "From: $email") )
// Si tout se passe bien on affiche un message de succès d'envoi
{header("Location: http://a.demxxxeurop.fr/merci.htm");}
// Si on rencontre un problème de réseau (connection serveur etc...)
else{ echo 'Une erreur est survenue lors de l\'envoi du message';}
}
// Si tous les champs ne sont pas remplis
else{ echo 'Merci de remplir tous les champs';}
?>
</body>
</html>
Lorsque je ne rempli pas les 3 champs obligatoire j'ai bien le
message:"merci de remplir tous les champs" et lorsque tous les champs
sont remplis et que je fais envoi le formulaire est bien expédié sur
mon email. MAIS je n'ai pas la page de remerciement et qui indique que
le formulaire est bien parti: nommmée "merci.htm" . A la place
s'affiche ma un message d'erreur:
Warning: Cannot modify header information - headers already sent by
(output started at /mnt/147/sda/5/8/a.demxxxeurop/envoi.php:9) in
/mnt/147/sda/5/8/a.demxxxeurop/envoi.php on line 43
Il y a forcement une erreur quelque part dans mon code qui empeche
d'afficher apres l'envoi la page de remerciement
Chercher l'erreur!!
J'ai un formulaire que j'envoie par PHP mail()
mon formulaire commence bien evidemment par:
<form method="post" action="envoi.php">
Ci dessous le code de: ENVOI.PHP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title>envoi.php</title>
</head>
<body>
<?php
// récuperation des variables provenant du formulaire
$prenomnom = $_POST['T1'];
$email = $_POST['T4'];
$qualite = $_POST['T2'];
$adresse = $_POST['T3'];
$telephone = $_POST['T5'];
$mobile = $_POST['T6'];
//E-mail auquel sera envoyé le formulaire
$destinataire = '***@club-internet.fr';
//sujet du mail envoyé
$sujet = 'Formulaire d'inscription';
//test pour vérifier que les champs sont bien tous remplis !!
if( !empty($prenomnom) && !empty($email) && !empty($adresse) ){
// création du message, les \n permettent de faire un saut de ligne
$message = "Une réponse est parvenue sur le
site\n\nNom:\n$prenomnom\n\nEmail:\n$email\n\nQualité:\n$qualite
\n\nAdresse:\n$adresse\n\nTéléphone:\n$telephone\n\nMobile:\n$mobile";
// On envoi le mail
if( mail($destinataire, $sujet, $message, "From: $email") )
// Si tout se passe bien on affiche un message de succès d'envoi
{header("Location: http://a.demxxxeurop.fr/merci.htm");}
// Si on rencontre un problème de réseau (connection serveur etc...)
else{ echo 'Une erreur est survenue lors de l\'envoi du message';}
}
// Si tous les champs ne sont pas remplis
else{ echo 'Merci de remplir tous les champs';}
?>
</body>
</html>
Lorsque je ne rempli pas les 3 champs obligatoire j'ai bien le
message:"merci de remplir tous les champs" et lorsque tous les champs
sont remplis et que je fais envoi le formulaire est bien expédié sur
mon email. MAIS je n'ai pas la page de remerciement et qui indique que
le formulaire est bien parti: nommmée "merci.htm" . A la place
s'affiche ma un message d'erreur:
Warning: Cannot modify header information - headers already sent by
(output started at /mnt/147/sda/5/8/a.demxxxeurop/envoi.php:9) in
/mnt/147/sda/5/8/a.demxxxeurop/envoi.php on line 43
Il y a forcement une erreur quelque part dans mon code qui empeche
d'afficher apres l'envoi la page de remerciement
Chercher l'erreur!!