8791 sujets

Développement web côté serveur, CMS

Bonjour,

Lorsque je récupère des données de mon formulaire et qu'elles sont envoyées sur mon adresse mail via une page php, il y a toujours un \ avant le '

exemple: "J'espère" (écrit dans une des parties de mon formulaire) sera dans mon mail: "J\'espère"

En fait, le signe \ se place à chaque fois devant l'apostrophe.

Auriez-vous une idée?

Merci d'avance!
Modifié par sl@hotmail.com (31 Dec 2011 - 15:36)
Merci!

L'option est bien activée...

Le soucis, c'est que je ne sais pas où je dois mettre cette fonction si je veux qu'elle s'applique à tout mon formulaire.

Pourriez-vous m'indiquer où je dois insérer cette fonction?

Merci d'avance

<?php
$to = "x@x.com";
$subject = "test";

$message = "Customer name:" . $_POST['name'] . "\r\n" .
"Email: " . $_POST['email'] . "\r\n" .
"Message: " . $_POST['message'];
$from = $_POST['email'];
$headers = "From: $from" . "\r\n";


mail($to, $subject, $message, $headers);
?>
Modifié par sl@hotmail.com (31 Dec 2011 - 15:59)
Je remplacerais l'appel direct aux variables $_POST par ceci (je ne donne que l'exemple pour $_POST['name']) :
$name = (get_magic_quotes_gpc ())? stripslashes ($_POST['name']): $_POST['name'];
$message = 'Customer name: '.$name."\r\n";

Soit dit en passant, tu devrais, avant même de traiter les échappements, vérifier si les paramètres passés en POST correspondent à des valeurs attendues. Tel qu'il est actuellement traité, à la vue de ton code, ton formulaire risque de se transformer en redoutable serveur de spams, rien qu'avec l'injection d'en-têtes mail.
Modifié par Victor BRITO (31 Dec 2011 - 16:00)
Merci beaucoup!

Cela fonctionne parfaitement.

Etant novice dans le domaine, quand tu parles de :

Tel qu'il est actuellement traité, à la vue de ton code, ton formulaire risque de se transformer en redoutable serveur de spams, rien qu'avec l'injection d'en-têtes mail.

Je ne vois pas trop ce que tu veux dire. Smiley confused

Merci...
sl@hotmail.com a écrit :
Etant novice dans le domaine, quand tu parles de :

Tel qu'il est actuellement traité, à la vue de ton code, ton formulaire risque de se transformer en redoutable serveur de spams, rien qu'avec l'injection d'en-têtes mail.

Je ne vois pas trop ce que tu veux dire. Smiley confused

Saisis la requête « injection headers mail » dans ton moteur de recherche préféré : tu tomberas sur des résultats édifiants.
Merci pour tous ces conseils!

J'ai regardé « injection headers mail » et effectivement il y a encore du chemin à parcourir avant de faire un code qui permette de concevoir un formulaire sécurisé.

Pour le moment, cela ne devrait pas être un problème (enfin, je pense...) car je ne fais que des tests à partir d'un serveur local.

Merci encore et bonne année 2012!