PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 19-03-2015 10:42:14

Gaeil28
Membre
Inscription : 30-12-2011
Messages : 21

fonction mail et ""

Bonjour,
j'utilise un formulaire qui envoi un mail après que la personne ait cliqué sur le bouton envoyer.
J'utilise la fonction mail de PHP. Le message est envoyé en html.
il y a une première étape qui consiste à afficher à l'écran ce que la personne a saisie.
ensuite je passe les variables au formulaire mail par des

<input type="hidden" name="adresse" value="<?php echo $adresse ; ?>" />

ensuite, dans le fichier d'envoi du mail, je récupère par exemple la variable adresse $adresse et je l'inclue dans le message .


$adresse_2 = $_POST['adresse'];
etc.....

$message = "Livraison  au nom de : <br>";
$message .= "{$prenom} ";
$message .= "{$nom_demandeur}<br>";
$message .= "{$adresse_2}<br>";

puis j'envoie

if (mail($destinataire, $objet, $message, $headers)) // Envoi du message
{
    echo 'Votre message a bien été envoyé ';
}
else // Non envoyé
{
    echo "Votre message n'a pas pu être envoyé";
}

 


imaginons que la personne saisisse : 39 "résidence toto".
dans le mail de réception, je ne vois que 39    -  c'est à dire que tout ce qui était entre "" ne passe pas (a été supprimé).
j'ai essaye de mettre

$adresse_2 = htmlspecialchars($_POST["adresse"],ENT_QUOTES);

mais ça ne résout pas le problème..l'adresse a disparu dans le mail...
Quel est le problème ?
merci
Gérard

Dernière modification par Gaeil28 (19-03-2015 11:40:36)

Hors ligne

#2 19-03-2015 23:00:15

tof73
Membre
Inscription : 21-12-2014
Messages : 156
Site Web

Re : fonction mail et ""

vu qu'il semble y avoir une page intermédiaire, c'est à cette ligne
<input type="hidden" name="adresse" value="<?php echo $adresse ; ?>" />
qu'il faut traiter les "

Hors ligne

#3 20-03-2015 11:16:23

0vordhosbn00
Membre
Inscription : 28-01-2015
Messages : 6

Re : fonction mail et ""

Bonjour,

Dans la mesure ou des guillemets n'ont rien à faire dans une adresse postale, le mieux c'est encore des les enlever.

Tu peux faire quelque chose comme :

$adresse = str_replace('"', '', $adresse);

Si tu veux te renseigner sur cette fonction : php str_replace

Hors ligne

#4 20-03-2015 14:31:59

Gaeil28
Membre
Inscription : 30-12-2011
Messages : 21

Re : fonction mail et ""

bonjour,
merci..ça fonctionne parfaitement
j'ai fait

str_replace('"','_',$adresse)

Gérard

Hors ligne

Pied de page des forums