Probleme de ponctuation et de retour a la ligne [Résolu]

msi79 - 11 mars 2014 à 13:42 - Dernière réponse : Whismeril 12116 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 18 octobre 2018 Dernière intervention
- 22 mars 2014 à 15:43
Bonjour,
j'ai un problème avec mon code php de mon formulaire de contact.
lorsqu'on reçois le message :
- les lettres comme é,è .... ne s'affichent en des caractères bizard
- la balise <br/> s'affiche dans le message envoyé lorsqu'on fait un retour à la ligne.
comment corriger cela ?
merci
ICI MON CODE4
 <?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'XXXXXXXXXXXXXXXXXXXXXX';


// copie ? (envoie une copie au visiteur)
$copie = 'oui';

// Action du formulaire (si votre page a des paramètres dans l'URL)
// si cette page est index.php?page=contact alors mettez index.php?page=contact
// sinon, laissez vide
$form_action = '';

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !<a href=\"http://bvconsult.net/index.php?page=CONTACT\"><b>Revenir au formulaire</b></a>";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Message d'erreur du formulaire
$message_formulaire_invalide = "";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = htmlspecialchars(trim($text), ENT_QUOTES);
if (1 === get_magic_quotes_gpc())
{
$text = stripslashes($text);
}

$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $email);
return (($value === 0) || ($value === false)) ? false : true;
}

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$tel = (isset($_POST['message']))? Rec($_POST['message']):'';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin

if (isset($_POST['envoi']))
{
if (($nom != '') && ($tel != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 5 variables sont remplies, on génère puis envoie le mail
$headers = 'From:'.$nom.' <'.$email.'>' . "\r\n";
//$headers .= 'Reply-To: '.$email. "\r\n" ;
//$headers .= 'X-Mailer:PHP/'.phpversion();

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);
echo'<br/><br/><br/>';
// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p><div style="position: absolute; top:80px; left: 600px; color: green; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">'.$message_envoye.'</div></p>';
}
else
{
echo '<p>'.$message_non_envoye.'</p>';
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<div class=".link-4">'.$message_formulaire_invalide.'</div';
$err_formulaire = true;
};
}; // fin du if (!isset($_POST['envoi']))

if (($err_formulaire) || (!isset($_POST['envoi'])))
{
// afficher le formulaire
/*echo'<leg>"Remplire correctement ce formulaire S.V.P"</</div>';*/


echo '<div class="kontaktformular" style="position: absolute; top:80px; left: 600px; color:#BBC915; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">
<div id="left_content_accueil_cantactez-nous">

<form id="contact" method="post" action="'.$form_action.'"><br/>
<legend>  Vérifiez que tous les champs (*) soient bien remplis et que l\'email soit sans erreur</legend><br/>

<fieldset class="kontaktdaten">
<legend>Données de contact</legend>

<label for="nom">  Nom(*) :      </label> <input type="text" id="nom" name="nom" value="'.stripslashes($nom).'" tabindex="1" />
</p>


<label for="email">  E-mail(*) :     </label><input type="text" id="email" name="email" value="'.stripslashes($email).'" tabindex="3" placeholder="ICI : Mail Expediteur"/>
<br/>
</fieldset>

<legend>     </legend>

<label for="objet">  Objet(*) :      </label><input type="text" id="objet" name="objet" value="'.stripslashes($objet).'" tabindex="4" />
</p>


<p><label for="message">  Message(*): </label><textarea id="message" name="message" tabindex="4" cols="50" rows="9">'.stripslashes($message).'</textarea></p>

<input type="submit" name="envoi" class="button_example" value="Envoyer votre message"/>

</form></div></div>';
};
?>
Afficher la suite 

Votre réponse

21 réponses

jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 11 mars 2014 à 14:55
0
Merci
Bonjour,
Il faut encoder en UTF-8
Commenter la réponse de jordane45
0
Merci
oui c'est en ut8 :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

mais malgré ça .
Commenter la réponse de msi79
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 11 mars 2014 à 18:30
0
Merci
Tu as essayé d'encoder en UTF-8 les informations de tes variables ?
$message =  utf8_encode($_POST['message']);


Tu peux aussi essayer ce format pour le mail :
// Creation de l'entete du mail a envoyer
  // --------------------------------------
  $boundary = md5(uniqid(microtime(), TRUE));
  $headers = 'From:'.$nom.' <'.$email.'>' . "\r\n";
   //$headers .= 'Reply-To: '.$email. "\r\n" ;
  $headers .= 'Mime-Version: 1.0'."\r\n";
  $headers .= 'Content-Type: multipart/mixed;boundary='.$boundary."\r\n";
  $headers .= "\r\n";
 
  // Creation du message a envoyer
  // -----------------------------
  $message  =
  '--' . $boundary . "\r\n" .
  'Content-type: text/html; charset=ISO-8859-15' . "\r\n\r\n
  <html>
<body style='margin:10px 0px 0px 30px;
                color:#393989;
                font-family:Arial;
                font-size:13px;' >";


/// Le reste de ton message....///
// Qui vient de ton $_POST['message']
$message  .= utf8_encode( $_POST['message']);

$message  .="
   </body>
  </html>\r\n";

Commenter la réponse de jordane45
0
Merci
bonjour,
merci @jordane45 de me répondre .
Effectivement j'ai utilisé utf8_encode( ) et le problème de è,é,ê est résolu mais il me reste le problème de retour à la ligne.
le message envoyé contient la balise <br/> quand à la saisie du message l'on fait retour à la ligne . alors c'est assez genant.
comment faire pour eviter cela :
voici le code :
 <?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = '***@***';


// copie ? (envoie une copie au visiteur)
$copie = 'oui';

// Action du formulaire (si votre page a des paramètres dans l'URL)
// si cette page est index.php?page=contact alors mettez index.php?page=contact
// sinon, laissez vide
$form_action = '';

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !<a href=\"http://global-aeit.com/index.php?page=CONTACT\"><b>Revenir au formulaire</b></a>";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Message d'erreur du formulaire
$message_formulaire_invalide = "";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = htmlspecialchars(trim($text), ENT_QUOTES);
if (1 === get_magic_quotes_gpc())
{
$text = stripslashes($text);
}

$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $email);
return (($value === 0) || ($value === false)) ? false : true;
}

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$tel = (isset($_POST['message']))? Rec($_POST['message']):'';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin

if (isset($_POST['envoi']))
{
if (($nom != '') && ($tel != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 5 variables sont remplies, on génère puis envoie le mail
$headers = 'From:'.$nom.' <'.$email.'>' . "\r\n";
//$headers .= 'Reply-To: '.$email. "\r\n" ;
//$headers .= 'X-Mailer:PHP/'.phpversion();

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);
echo'<br/><br/><br/>';
// Envoi du mail
if (mail($cible, $objet, utf8_encode($message), $headers))
{
echo '<p><div style="position: absolute; top:80px; left: 600px; color: green; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">'.$message_envoye.'</div></p>';
}
else
{
echo '<p>'.$message_non_envoye.'</p>';
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<div class=".link-4">'.$message_formulaire_invalide.'</div';
$err_formulaire = true;
};
}; // fin du if (!isset($_POST['envoi']))

if (($err_formulaire) || (!isset($_POST['envoi'])))
{
// afficher le formulaire
/*echo'<leg>"Remplire correctement ce formulaire S.V.P"</</div>';*/


echo '<div class="kontaktformular" style="position: absolute; top:80px; left: 600px; color:#BBC915; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">
<div id="left_content_accueil_cantactez-nous">

<form id="contact" method="post" action="'.$form_action.'"><br/>
<legend>  Vérifiez que tous les champs (*) soient bien remplis et que l\'email soit sans erreur</legend><br/>

<fieldset class="kontaktdaten">
<legend>Données de contact</legend>

<label for="nom">  Nom(*) :      </label> <input type="text" id="nom" name="nom" value="'.stripslashes($nom).'" tabindex="1" />
</p>


<label for="email">  E-mail(*) :     </label><input type="text" id="email" name="email" value="'.stripslashes($email).'" tabindex="3" />
<br/>
</fieldset>

<legend>     </legend>

<label for="objet">  Objet(*) :      </label><input type="text" id="objet" name="objet" value="'.stripslashes($objet).'" tabindex="4" />
</p>


<p><label for="message">  Message(*): </label><textarea id="message" name="message" tabindex="4" cols="50" rows="9">'.stripslashes($message).'</textarea></p>

<input type="submit" name="envoi" class="button_example" value="Envoyer votre message"/>

</form></div></div>';
};
?>
Commenter la réponse de msi79
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - Modifié par jordane45 le 14/03/2014 à 11:06
0
Merci
Bonjour,

Tu peux essayer, comme tu l'as déjà fait dans ton code.. de remplacer toutes les occurences de <br dans ton message;

// A la place de :
$message = str_replace('<br />','',$message);

// Utiliser :
$message =preg_replace("/<br[ ]*\/>/", " ", $message);

</code>

Ce code, qui utilise preg_replace supprimera toutes tes balises qui sont de la forme :
<br/>  <br />  <br     />


Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
Commenter la réponse de jordane45
0
Merci
si je comprend bien . à la place de :
tout cela :
    // Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
//$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);

je met ça :
    // Remplacement de certains caractères spéciaux
$message = preg_replace("'","'",$message);
$message = preg_replace("’","'",$message);
$message = preg_replace(""",'"',$message);
$message = preg_replace('<br>','',$message);
//$message = preg_replace('<br />','',$message);
$message = preg_replace("<","<",$message);
$message = preg_replace(">",">",$message);
$message = preg_replace("&","&",$message);
Commenter la réponse de msi79
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 14 mars 2014 à 11:59
0
Merci
Bonjour,

si je comprend bien
Ben tu n'as pas bien lu ce que je t'ai marqué....
Je ne t'ai pas demandé d'utiliser preg_replace partout.. je t'ai juste dit de le changer pour le <br/> ....
EN plus... attention.. regardes bien mon code... j'utilise une expression régulière... pas juste le terme "<br/>" mais : "/<br[ ]*\/>/" ... ce qui n'est pas pareil...
Commenter la réponse de jordane45
0
Merci
le problème de <br/> est réglé mais celui des é,è,à,ê persite malgré ça :
utf8_encode($message)
dans :
if (mail($cible, $objet, utf8_encode($message), $headers))
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 14 mars 2014 à 12:32
Faudrait savoir....

j'ai utilisé utf8_encode( ) et le problème de è,é,ê est résolu
le problème de <br/> est réglé mais celui des é,è,à,ê persite malgré ça

Si tu as encore un souci avec les caractères accentués... alors que tu ne l'avais plus juste avant... c'est que tu as changé quelque chose dans ton code.... non ??
Commenter la réponse de msi79
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 19 mars 2014 à 13:00
0
Merci
bonjour ,
1. le problème de <br/> est réglé mais celui des é,è,à,ê persite malgré utf8_encode( ) .
voici ou je l'ai mis .
$message = (isset($_POST['message'])) ? Rec(utf8_encode($_POST['message'])) : '';

2. @jordane45 je ne sais pas comment adopter le code que vous m'avez envoyer a mon code
Commenter la réponse de msi79
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 19 mars 2014 à 14:52
0
Merci
Je pense que l'encode de tes caractères accentués vient de ta fonction REC

Essayes plutot :

$message = (isset($_POST['message'])) ? utf8_encode($_POST['message']) : '';


Commenter la réponse de jordane45
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 19 mars 2014 à 16:46
0
Merci
bonsoir,
je viens d'essayer ça
$message = (isset($_POST['message'])) ? utf8_encode($_POST['message']) : '';
mais en vain
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 19 mars 2014 à 17:12
1- Tu peux faire un ECHO de $message et nous dire ce que ça te met ?
Est-ce que déjà là.. tu as un souci avec les caractères accentués ou bien est-ce dans le Mail ( lorsque tu le reçois) ?

2 - Au cas où.. tu as essayé avec le code que je t'avais proposé ? http://codes-sources.commentcamarche.net/forum/affich-10022826-probleme-de-ponctuation-et-de-retour-a-la-ligne#3

3 - Est-ce que ça fait la même chose ?

4 - Peux tu nous remettre le code d'envoi du mail ( celui que tu essayes en ce moment) ?
Commenter la réponse de msi79
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 19 mars 2014 à 17:20
0
Merci
1. ECHO me donne un résultat sans problème :vérification de votre formulaire de contact

2. j'ai pas pu tester le code que tu m'as donné car je suis un peu perdu
3. voici mon code complet
<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'xxxxxxxxxxxxxx';


// copie ? (envoie une copie au visiteur)
$copie = 'oui';

// Action du formulaire (si votre page a des paramètres dans l'URL)
// si cette page est index.php?page=contact alors mettez index.php?page=contact
// sinon, laissez vide
$form_action = '';

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !<a href=\"http://bvconsult.net/index.php?page=CONTACT\"><b>Revenir au formulaire</b></a>";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Message d'erreur du formulaire
$message_formulaire_invalide = "";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = htmlspecialchars(trim($text), ENT_QUOTES);
if (1 === get_magic_quotes_gpc())
{
$text = stripslashes($text);
}

$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\'\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $email);
return (($value === 0) || ($value === false)) ? false : true;
}

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$tel = (isset($_POST['message']))? Rec($_POST['message']):'';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
echo $message;


// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin

if (isset($_POST['envoi']))
{
if (($nom != '') && ($tel != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 5 variables sont remplies, on génère puis envoie le mail
$headers = 'From:'.$nom.' <'.$email.'>' . "\r\n";
//$headers .= 'Reply-To: '.$email. "\r\n" ;
//$headers .= 'X-Mailer:PHP/'.phpversion();

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message =preg_replace("/<br[ ]*\/>/", " ", $message);
//$message = preg_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);
echo $message;
echo'<br/><br/><br/>';
// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p><div style="position: absolute; top:80px; left: 600px; color: green; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">'.$message_envoye.'</div></p>';
}
else
{
echo '<p>'.$message_non_envoye.'</p>';
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<div class=".link-4">'.$message_formulaire_invalide.'</div';
$err_formulaire = true;
};
}; // fin du if (!isset($_POST['envoi']))

if (($err_formulaire) || (!isset($_POST['envoi'])))
{
// afficher le formulaire
/*echo'<leg>"Remplire correctement ce formulaire S.V.P"</</div>';*/


echo '<div class="kontaktformular" style="position: absolute; top:80px; left: 600px; color:#BBC915; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">
<div id="left_content_accueil_cantactez-nous">

<form id="contact" method="post" action="'.$form_action.'"><br/>
<legend>  Vérifiez que tous les champs (*) soient bien remplis et que l\'email soit sans erreur</legend><br/>

<fieldset class="kontaktdaten">
<legend>Données de contact</legend>

<label for="nom">  Nom(*) :      </label> <input type="text" id="nom" name="nom" value="'.stripslashes($nom).'" tabindex="1" />
</p>


<label for="email">  E-mail(*) :     </label><input type="text" id="email" name="email" value="'.stripslashes($email).'" tabindex="3" />
<br/>
</fieldset>

<legend>     </legend>

<label for="objet">  Objet(*) :      </label><input type="text" id="objet" name="objet" value="'.stripslashes($objet).'" tabindex="4" />
</p>


<p><label for="message">  Message(*): </label><textarea id="message" name="message" tabindex="4" cols="50" rows="9">'.stripslashes($message).'</textarea></p>

<input type="submit" name="envoi" class="button_example" value="Envoyer votre message"/>

</form></div></div>';
};
?>
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 19 mars 2014 à 17:39
Tu as encore ta fonction Rec pour $message ???
Tu as bien testé sans.. pour voir si ça fonctionnait mieux ?

Sinon, pour mon code... ben il suffit de remplacer le code qui génère le mail dans ton script... par le mien....
rien de bien compliqué...

if (isset($_POST['envoi']))
    {
    if (($nom != '') && ($tel != '') && ($email != '') && ($objet != '') && ($message != ''))
    {

  // Creation de l'entete du mail a envoyer
  // --------------------------------------
  $boundary = md5(uniqid(microtime(), TRUE));
  $headers = 'From:'.$nom.' <'.$email.'>' . "\r\n";
   //$headers .= 'Reply-To: '.$email. "\r\n" ;
  $headers .= 'Mime-Version: 1.0'."\r\n";
  $headers .= 'Content-Type: multipart/mixed;boundary='.$boundary."\r\n";
  $headers .= "\r\n";
 
  // Creation du message a envoyer
  // -----------------------------
  $message  =
  '--' . $boundary . "\r\n" .
  'Content-type: text/html; charset=ISO-8859-15' . "\r\n\r\n
  <html>
<body style='margin:10px 0px 0px 30px;
                color:#393989;
                font-family:Arial;
                font-size:13px;' >";


   $message  .= utf8_encode( trim($_POST['message']));
  // Remplacement de certains caractères spéciaux
  /*  Pas utile puisque tu envoies le mail au format HTML
    $message = str_replace('<br>','',$message);
    $message =preg_replace("/<br[ ]*\/>/", " ", $message);
   */  
    // envoyer une copie au visiteur ?
    if ($copie == 'oui')
    {
    $cible = $destinataire.','.$email;
    }
    else
    {
    $cible = $destinataire;
    };

     echo'<br><b/><br>';
    // Envoi du mail
    if (mail($cible, $objet, $message, $headers))
    {
    echo '<p><div style="position: absolute; top:80px; left: 600px; color: green; font: italic 16px/16px Georgia, Serif; border: 0px solid#060606; width: 505px; height: 388px">'.$message_envoye.'</div></p>';
    }
    else
    {
    echo '<p>'.$message_non_envoye.'</p>';
    };
    }
    else
    {
    // une des 3 variables (ou plus) est vide ...
    echo '<div class=".link-4">'.$message_formulaire_invalide.'</div';
    $err_formulaire = true;
    };
    }; // fin du if (!isset($_POST['envoi']))
Commenter la réponse de msi79
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 19 mars 2014 à 19:18
0
Merci
bizarement le code marche parfaitement .
merci @jordane45 je teste le tient quand meme
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 20 mars 2014 à 09:34
Si ton souci est résolu, merci de penser à cloturer le sujet en cliquant sur le lien : MARQUER COMME RESOLU qui se situe sous le titre de ta question.
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 22 mars 2014 à 14:47
je vois pas ou je clique pour dire resolu
jordane45 22884 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 octobre 2018 Dernière intervention - 22 mars 2014 à 14:58
Sous le Titre de ta question...
msi79 455 Messages postés lundi 24 août 2009Date d'inscription 9 octobre 2018 Dernière intervention - 22 mars 2014 à 15:24
je vois que :Ne plus suivre sous le titre de la question
Whismeril 12116 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 18 octobre 2018 Dernière intervention - 22 mars 2014 à 15:43
C'est parce que tu n'étais pas connecté quand tu as posé la question le site ne te reconnais donc pas comme étant le posteur.
Je le fais pour toi
Commenter la réponse de msi79

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.