Envoi d'un mail qui ne fonctionne pas

cs_philippe Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   -  
cs_philippe Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'essaie d'envoyer depuis mon hébergeur (OVH) mais ça ne marche pas.
La page ne s'affiche pas du tout lorsque quand je la mets en ligne alors que sans les données du mail la page est affichée normalement

la partie correspondant au mail :
 $to = 'mon nom <monnom@gmail.com>,nom1<nom1@gmail.com>,nom2<nom2@orange.fr>';
$subject = 'Message sur le site de l'association';                 
$msg = 'Ci-dessous le message d´posé sur le site par $prenom $nom <br />
 Adresse de l'émetteur : $emetteur<br />
 Objet du message : $objet <br />
 Texte du message : $textemessage';
$headers = 'From: Association_Culturelle_Troissy_Bouquigny <contact@associationculturelletroissybouquigny.fr>'."\r\n"; 
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"";

mail($to, $subject, $msg, $headers);


pour info j'envoie un mail avec le même format) à partir d'une autre page et ça marche.

Merci de me dire ce qui ne va pas

EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,


La page ne s'affiche pas du tout lorsque quand je la mets en ligne

Tu as donc sûrement un souci dans le code php de ta page ....
Peux tu placer en première ligne de ta page php le code suivant :
//Affichage des erreurs PHP
error_reporting(E_ALL);


et voir si ça t'affiche quelque chose quand tu affiches cette page.

0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
NB:
Tu as sûrement un PB avec cette ligne :
$subject = 'Message sur le site de l'association';   

Tu utilises des quotes simples pour encapsuler ta string .. et dedans.. tu as une apostrophe ...............
Remplaces par :
$subject = "Message sur le site de l'association";   

ou par :
$subject = 'Message sur le site de l\'association';   
0
cs_philippe Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
J'ai un peu avancé. Je reçois bien le message et les apostrophes sont bien là sauf dans le texte du message.
Le message laissé sur le site et envoyé par mail aux membres de l'association

if (isset($_POST['enregistrer'])){
if ((empty($_POST['nom'])) OR (empty($_POST['prenom'])) OR (empty($_POST['mail'])) OR (empty($_POST['objet'])) OR (empty($_POST['textemessage']))){
$message = "Merci de renseigner tous les champs.";
}
else if (empty($message)){
//teste si le même message est déjà dans la table
$textemessage = mysqli_real_escape_string($con,$_POST['textemessage']);
$requete = "SELECT * FROM messages WHERE date = '$my_date' AND emetteur = '$mail' AND texte = '$textemessage'";
$resultat = $mysqli->query($requete) or die ('Erreur '.$requete.' '.$mysqli->error());
if (mysqli_num_rows($resultat) > 0){
$message = "Ce message est déjà enregistré !";
}
else {
$objetmail = $_POST['objet'];
$textemessagemail = $_POST['textemessage'];
$objet = mysqli_real_escape_string($con,$_POST['objet']);
$nom = mysqli_real_escape_string($con,$_POST['nom']);
$prenom = mysqli_real_escape_string($con,$_POST['prenom']);
$emetteur = mysqli_real_escape_string($con,$_POST['mail']);
$textemessage = mysqli_real_escape_string($con,$_POST['textemessage']);
//preparation de la requete
$requete = "INSERT INTO messages (id_message, date, heure, nom, prenom, emetteur, objet, texte)
VALUES('','$my_date','$my_time','$nom','$prenom','$emetteur','$objet','$textemessage')";
if (mysqli_query($con, $requete)) {
$message1 = "Merci pour votre message, nous vous répondrons dans les meilleurs délais";
// ***** MAIL AUX MEMBRES DE L'ASSOCIATION ****
$to = 'nom <nom@gmail.com>,nom1 <nom1@gmail.com>,nom2<nom2@orange.fr>';
$subject = 'Message sur le site de l\'association';
$msg = 'Ci-dessous le message déposé sur le site par '.$prenom.' '.$nom.'.<br />
Adresse de l\'émetteur : '.$emetteur.'. <br />
Objet du message : '.$objetmail.'. <br />
Texte du message : '.$textemessagemail.'.' ;
$headers = 'From: Association_Culturelle_Troissy_Bouquigny <contact@associationculturelletroissybouquigny.fr>'."\r\n";
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"";

mail($to, $subject, $msg, $headers);


} else {
$message = "Message non enregistré. Merci de vérifier votre saisie";
}
mysqli_close($con);
}
}
}


Les apostrophes sont bien échappées mais les "à" sont incorrectes.
Le message qui arrive : Vous pouvez supprimer ces messages qui ne sont que des tests de l'association d'envois de mail à des membres.."

Merci d'avance
0
cs_philippe Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   > cs_philippe Messages postés 71 Date d'inscription   Statut Membre Dernière intervention  
 
Donc comme je disais mon soucis est "Ã" reçu pour "à" écrit dans le mail
0