OVH Cloud OVH Cloud

Probleme avec les apostrophes.

4 réponses
Avatar
bloiiing
Bonjour,

Je viens de faire un tout petit bout de code qui m'envoie un email pour
éviter les robots des spammers. le voici:

<?php
$to = 'monlogin' . '@' . 'monprovider.fr';
$email = $_POST['email'];
$sujet = '[anti_spam] ' . $_POST['subject'];
$message = $_POST['body'];
$headers = 'From: ' . $email . "\r\n" .
'Reply-To: ' . $email . "\r\n" .
'X-Mailer: PHP/' . phpversion();

$wrappedmessage = wordwrap( $message, 70, "\n" );
mail( $to, $sujet, $wrappedmessage, $headers );
echo '
<html>
<head>
<title>Contact me...</title>
</head>
<body bgcolor="#ccaaff">
<div align="center"><b><font face="Verdana, Arial, Helvetica,
sans-serif" size="5" color="#9966cc">Message sent...</font></b></div>
</body>
</html>
';
?>

le problème c'est que quand je reçois le mail, les apostrophes sont
toujours précédées de \. Exemple:

"Lorsqu\'il n\'y a plus d\'ingestion d\'aliments, il n\'y a
bien évidemment plus d\'entrée de toxines."

Comment pourrais-je éviter ça. Je n'ai rien vu dans la doc de la
commande mail(), mais peut-être ai-je mal regardé?

Merci d\'avance :)
--
To send me an email go to:
Pour m'envoyer un courriel allez à:
http://antispam.moonbeat.net/

4 réponses

Avatar
Frederic Rouchouze
le problème c'est que quand je reçois le mail, les apostrophes sont
toujours précédées de . Exemple:


Tu dois avoir l'option "magicquotes" activée. Regarde ici :
http://fr2.php.net/manual/fr/security.magicquotes.php
--
Frédéric Rouchouze
mailto:

Avatar
Patrick Mevzek
Comment pourrais-je éviter ça. Je n'ai rien vu dans la doc de la
commande mail(), mais peut-être ai-je mal regardé?


Ca sent l'option de configuration magic_quotes activée dans votre installation PHP.
Voir la doc de cette option, et la doc des fonctions PHP
addslashes() et stripslashes()

--
Patrick Mevzek . . . . . . Dot and Co (Paris, France)
<http://www.dotandco.net/> <http://www.dotandco.com/>
Dépêches sur le nommage <news://news.dotandco.net/dotandco.info.news>

Avatar
Olivier Miakinen

<?php
[...]
$message = $_POST['body'];
[...]
$wrappedmessage = wordwrap( $message, 70, "n" );
mail( $to, $sujet, $wrappedmessage, $headers );
[...]
?>

le problème c'est que quand je reçois le mail, les apostrophes sont
toujours précédées de . [...]

Comment pourrais-je éviter ça. Je n'ai rien vu dans la doc de la
commande mail(), mais peut-être ai-je mal regardé?


Avant d'incriminer la fonction mail(), as-tu vérifié que le problème
n'était pas déjà présent dans $wrappedmessage ? Et dans $message ?

--
Olivier Miakinen
Troll du plus sage chez les conviviaux : le nouveau venu, avec
son clan, s'infiltre dans les groupes de nouvelles. (3 c.)

Avatar
bloiiing
Frederic Rouchouze wrote:
le problème c'est que quand je reçois le mail, les apostrophes sont
toujours précédées de . Exemple:



Tu dois avoir l'option "magicquotes" activée. Regarde ici :
http://fr2.php.net/manual/fr/security.magicquotes.php


Merci c'était bien ça. J'ai utilisé la fonction stripslashes() et ça marche.

--
To send me an email go to:
Pour m'envoyer un courriel allez à:
http://antispam.moonbeat.net/