Quand des mails me sont envoyés à partir du lien contact les accents ou tout autre lettre hors norme n'apparaissent pas normalement.
Je cherche de partout, j'essaye pleins de solutions mais je n'y arrive pas.
Alors voici les codes :
1er fichier :
parametres.php
<?php
// Tableau contenant les adresses e-mail de contact
$Tab_e_mail = Array('xxxxxx@orange.fr');
?>
2eme fichier:
contact.php
<?php
//Include des parametres
include 'parametres/parametres.php';
//recup variable formulaire
if(!isset($_POST['objet']) && !isset($_POST['message']) && !isset($_POST['mail'])){// si les variables n'existent pas
echo $msgmail;
?>
<form action="index.php?pages=contact" method="post">
<table width="auto" align="center">
<tr>
<td width="229">
<h6>Objet<font color="#FFFF00"> *</font></h6></td>
<td width="auto"><input type="text" name="objet" id="objet" size="40px" /> </td>
</tr>
<tr>
<td width="229">
<h6>Votre adresse e-mail<font color="#FFFF00"> *</font></h6></td>
<td>
<input type="text" name="mail" id="mail" size="40px" />
</td>
</tr>
<tr>
<td width="229" valign="top">
<h6>Message<font color="#FFFF00"> *</font></h6></td>
<td>
<br />
<textarea name="message" cols="30" rows="10"></textarea></td>
</tr>
<tr>
<td width="229">
</td>
<td >
<center><input type="submit" name="valider" id="valider" value="Envoyer"/></center>
</td>
</tr>
</table>
</form>
<?php
} elseif($_POST['objet']!='' && $_POST['message']!='' && $_POST['mail']!=''){ // si les variables existent et sont remplies
if(eregi("^[a-zA-Z0-9]+[._a-zA-Z0-9-]*@[a-zA-Z0-9]+[_a-zA-Z0-9-]*\.[a-zA-Z]{2,}$",$_POST['mail'])){
//j'envoi le mail à mon mail qui est défini dans parametre.php avec les variables
$headers = 'From: ' . $_POST['mail'];// pour que soonlinex n'apparaîsse pas
for($i=0;$i < count($Tab_e_mail);$i++){// je vais chercher l'adresse de réception de mail dans paramètre
mail($Tab_e_mail[$i],$_POST['objet'],$_POST['mail'] . ' ' . $_POST['message'],$headers);
}
//le mail a été bien envoyé
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#ffffff\'>Message bien reçu.<br />Je vous contacterai dans les plus brefs délais.<br />Merci</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=accueil">Retour à l\'accueil</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}else{
//l'adresse e-mail n'est pas valide donc msg d'erreur
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#FFFF00\'>L\'adresse e-mail n\'est pas valide.<br />Veuillez recommencer.</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=contact">Retour à la page de contact</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}
} else{ //gestion des erreurs de remplissage de formulaire
$erreur= '';
//objet absent
if ($_POST['objet']==''){
$erreur= 'objet';
}
//mail absent
if ($_POST['mail']==''){
if($erreur==''){
$erreur= $erreur . 'mail';
}elseif($_POST['message']!=''){
$erreur= $erreur . ' et mail';
}else{
$erreur= $erreur . ', mail';
}
}
//message absent
if ($_POST['message']==''){
if ($erreur==''){
$erreur= $erreur . 'message';
} else{
$erreur= $erreur . ' et message';
}
}
//affichage du message d'erreur + formulaire de mail
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#FFFF00\'>Vous n\'avez pas rempli le(s) champ(s) suivant : ' . $erreur . '.</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=contact">Retour à la page de contact</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}
?>
Pouvez-vous m'aider.
Merci d'avance.
Softarg
Je cherche de partout, j'essaye pleins de solutions mais je n'y arrive pas.
Alors voici les codes :
1er fichier :
parametres.php
<?php
// Tableau contenant les adresses e-mail de contact
$Tab_e_mail = Array('xxxxxx@orange.fr');
?>
2eme fichier:
contact.php
<?php
//Include des parametres
include 'parametres/parametres.php';
//recup variable formulaire
if(!isset($_POST['objet']) && !isset($_POST['message']) && !isset($_POST['mail'])){// si les variables n'existent pas
echo $msgmail;
?>
<form action="index.php?pages=contact" method="post">
<table width="auto" align="center">
<tr>
<td width="229">
<h6>Objet<font color="#FFFF00"> *</font></h6></td>
<td width="auto"><input type="text" name="objet" id="objet" size="40px" /> </td>
</tr>
<tr>
<td width="229">
<h6>Votre adresse e-mail<font color="#FFFF00"> *</font></h6></td>
<td>
<input type="text" name="mail" id="mail" size="40px" />
</td>
</tr>
<tr>
<td width="229" valign="top">
<h6>Message<font color="#FFFF00"> *</font></h6></td>
<td>
<br />
<textarea name="message" cols="30" rows="10"></textarea></td>
</tr>
<tr>
<td width="229">
</td>
<td >
<center><input type="submit" name="valider" id="valider" value="Envoyer"/></center>
</td>
</tr>
</table>
</form>
<?php
} elseif($_POST['objet']!='' && $_POST['message']!='' && $_POST['mail']!=''){ // si les variables existent et sont remplies
if(eregi("^[a-zA-Z0-9]+[._a-zA-Z0-9-]*@[a-zA-Z0-9]+[_a-zA-Z0-9-]*\.[a-zA-Z]{2,}$",$_POST['mail'])){
//j'envoi le mail à mon mail qui est défini dans parametre.php avec les variables
$headers = 'From: ' . $_POST['mail'];// pour que soonlinex n'apparaîsse pas
for($i=0;$i < count($Tab_e_mail);$i++){// je vais chercher l'adresse de réception de mail dans paramètre
mail($Tab_e_mail[$i],$_POST['objet'],$_POST['mail'] . ' ' . $_POST['message'],$headers);
}
//le mail a été bien envoyé
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#ffffff\'>Message bien reçu.<br />Je vous contacterai dans les plus brefs délais.<br />Merci</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=accueil">Retour à l\'accueil</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}else{
//l'adresse e-mail n'est pas valide donc msg d'erreur
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#FFFF00\'>L\'adresse e-mail n\'est pas valide.<br />Veuillez recommencer.</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=contact">Retour à la page de contact</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}
} else{ //gestion des erreurs de remplissage de formulaire
$erreur= '';
//objet absent
if ($_POST['objet']==''){
$erreur= 'objet';
}
//mail absent
if ($_POST['mail']==''){
if($erreur==''){
$erreur= $erreur . 'mail';
}elseif($_POST['message']!=''){
$erreur= $erreur . ' et mail';
}else{
$erreur= $erreur . ', mail';
}
}
//message absent
if ($_POST['message']==''){
if ($erreur==''){
$erreur= $erreur . 'message';
} else{
$erreur= $erreur . ' et message';
}
}
//affichage du message d'erreur + formulaire de mail
$msgmail = '<br/>';
$msgmail = $msgmail . '<center><font color=\'#FFFF00\'>Vous n\'avez pas rempli le(s) champ(s) suivant : ' . $erreur . '.</font>';
$msgmail = $msgmail . '<br/>';
$msgmail = $msgmail . '<br/><a href="index.php?pages=contact">Retour à la page de contact</a></center>';
$msgmail = $msgmail . '<br/>';
echo $msgmail;
}
?>
Pouvez-vous m'aider.
Merci d'avance.
Softarg