Erreur d'envoi en PHP

Fermé
amino017 Messages postés 12 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 3 novembre 2009 - 6 avril 2009 à 12:10
amino017 Messages postés 12 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 3 novembre 2009 - 8 avril 2009 à 10:35
Bonjour,

j'ai crer un formulaire d'envoi par php mais j'ai un message qui s'affiche en cliquant sur envoyer.

ci dessous mon code:

<?php

// N'afficher que les erreurs, pas les avertissements...
ini_set("error_reporting", "E_ALL & ~E_NOTICE");

// Adresse de réception du formulaire
$email_dest = "a.sfirtiss@aswakassalam.com";

if ($_POST['envoi']) {

// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="From: Utilisateur d\'intranet<intranet-kenitra@aswakassalam.com>\n";


$headers .="Content-Type: text/html; charset=iso-8859-1 \n";

$subject = "Demande d\'attestation";

$partie_entete = "<html><head>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>";

for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['champ'.$a] . "</font><br>";
}

if ($_POST['nbre_zone_email'] != 0) {
$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>";
}

if ($_POST['nbre_zones_texte'] != 0) {
$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>";
$partie_zone_texte = stripslashes($partie_zone_texte);
}

$fin = "</body></html>";

$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_zone_texte . $fin;

// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} else { // Closing if !mail...

// Renvoi à la page de remerciement
header("Location:merci.html");
exit();

} // Fin du else
} // Closing if edit
?><html><head><title></title><script language="JavaScript">function verifSelection() {if (document.mail_form.champ1.value == "") {
alert("Veuillez saisir votre Nom")
return false
} if (document.mail_form.champ2.value == "") {
alert("Veuillez saisir votre prénom")
return false
} if (document.mail_form.champ3.value == "") {
alert("Veuillez choisir votre demande")
return false
} if (document.mail_form.zone_email.value == "") {
alert("Veuillez saisir votre E-MAIL")
return false
}

invalidChars = " /:,;'"

for (i=0; i<invalidChars.length; i++) { // does it contain any invalid characters?
badChar = invalidChars.charAt(i)

if (document.mail_form.zone_email.value.indexOf(badChar,0) > -1) {
alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.")
document.mail_form.zone_email.focus()
return false
}
}

atPos = document.mail_form.zone_email.value.indexOf("@",1) // there must be one "@" symbol
if (atPos == -1) {
alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.')
document.mail_form.zone_email.focus()
return false
}

if (document.mail_form.zone_email.value.indexOf("@",atPos+1) != -1) { // and only one "@" symbol
alert('Il ne doit y avoir qu\'un signe "@". Veuillez vérifier.')
document.mail_form.zone_email.focus()
return false
}

periodPos = document.mail_form.zone_email.value.indexOf(".",atPos)

if (periodPos == -1) { // and at least one "." after the "@"
alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.')
document.mail_form.zone_email.focus()
return false
}

if (periodPos+3 > document.mail_form.zone_email.value.length) { // must be at least 2 characters after the
alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.')
document.mail_form.zone_email.focus()
return false
}if (document.mail_form.zone_texte.value == "") {
alert("Text vide")
return false
} } // Fin de la fonction

</script></head><body><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" onSubmit="return verifSelection()">
<div align="center"></div>
<p align="center">
<table width="566" border="0" align="center">
<p align="center">
</p><tr>
<td><font face="Verdana" size="2">NOM</font></td>
<td><input name="champ1" type="text"></td>
</tr><tr>
<td><font face="Verdana" size="2">PRENOM</font></td>
<td><input name="champ2" type="text"></td>
</tr><tr>
<td><font face="Verdana" size="2">DEMANDE</font></td>
<td><input name="champ3" type="text"></td>
</tr><tr>
<td width><font face="Verdana" size="2">E-MAIL</font></td>
<td width><input name="zone_email" type="text"></td>
</tr><tr>
<td valign="top"><font face="Verdana" size="2">MOTIF</font></td>
<td><textarea name="zone_texte" cols="50" rows="10"></textarea></td>
</tr><tr>
<td valign="top"><input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="3">
<input name="nbre_zones_texte" type="hidden" value="1">
<input name="nbre_zone_email" type="hidden" value="1">
<input name="titre_champ1" type="hidden" value="NOM"><input name="titre_champ2" type="hidden" value="PRENOM"><input name="titre_champ3" type="hidden" value="DEMANDE"><input name="titre_email" type="hidden" value="E-MAIL"><input name="titre_zone" type="hidden" value="MOTIF"></td>
<td><div align="center">
<input type="reset" name="Reset" value="Effacer">
<input type="submit" name="envoi" value="Envoyer">
</div></td>
</tr>
</table>
<div align="center"></div>
</form></body></html>

5 réponses

bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
6 avril 2009 à 15:41
Salut!
Tu peux nous dire ce qui s'affiche?
0
amino017 Messages postés 12 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 3 novembre 2009
6 avril 2009 à 15:46
merci d'avoir répondu,

ben dés que je remplie les champs du formulaire, elle se vide automatiquement et un message d'erreur s'affiche: " envoi du formulaire impossible".

Merci une 2 fois
0
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
6 avril 2009 à 15:52
Salut!
à la place de ceci:
// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} else { // Closing if !mail...

// Renvoi à la page de remerciement
header("Location:merci.html");
exit();

} // Fin du else
} // Closing if edit

met ceci:

// Send the e-mail
if (mail($email_dest,$subject,$sortie,$headers)) {
// Renvoi à la page de remerciement
header("Location:merci.html");
exit();
} 
else { // Closing if !mail...
echo("Envoi du formulaire impossible");

} // Fin du else
} // Closing if edit


C'est juste un petit test!
0
amino017 Messages postés 12 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 3 novembre 2009
6 avril 2009 à 16:14
euhhhhhhhh
toujours le mme probleme
0

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

Posez votre question
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
6 avril 2009 à 16:33
à mon avis ce qui cause le problème,c'est la variable $sortie.
0
amino017 Messages postés 12 Date d'inscription dimanche 27 août 2006 Statut Membre Dernière intervention 3 novembre 2009
8 avril 2009 à 10:35
avez vous une idée sur des tutoriels qui peuvent faire l'affaire?

sinon vous pouvez me donnée un coup de main en tchatchant sous msn ou d'autre ou établir une connexion VPN et on essaye de réglé le probléme ensemble ?!
0