bonjour, et merci de ton intérêt. le problème s'est résolu par lui même. Maintenant ca marche et pourtant je n'ai rien changé de plus.
Par contre j'aimerai bien être aidée maintenant sur un autre problème. Dans la partie message, les accents ou tout autre lettre hors norme n'apparaissent pas normalement dans l'e-mail envoyé. Des caractères bizarres se mettent à la place des lettres accentués. 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@gmail.com'); ?>
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; ?>
<?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'; }
Alors ça, c'est connu : tu ne respectes pas ta chaîne d'encodage : tu dois utiliser le même encodage (utf-8 par exemple) d'un bout à l'autre de ta chaîne de production, en le déclarant dans chaque fichier, et en enregistrant effectivement le fichier à ce format. Je te conseille cet article sur Alsacreations