OVH Cloud OVH Cloud

envoi formulaire

4 réponses
Avatar
yenapas
Bonjour

J'envoi un petit formulaire avec ce script.. mais j'ai un petit souci

<?php
$adresse = toto@mydom.fr;
$msg = $_POST["nom"]."\n";
$msg .= $_POST["prenom"]."\n";
$msg .= $_POST["adresse"]."\n";
if(!mail($adresse, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

dans erreur.log il n'aime pas le @ de l'adresse

si je mets $adresse = "toto@mydom.fr";
c'est les cotes (") qu'il n'aime pas...

help.. merci

4 réponses

Avatar
Paul Delannoy
yenapas a écrit:
Bonjour

J'envoi un petit formulaire avec ce script.. mais j'ai un petit souci

<?php
$adresse = ;
$msg = $_POST["nom"]."n";
$msg .= $_POST["prenom"]."n";
$msg .= $_POST["adresse"]."n";
if(!mail($adresse, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

dans erreur.log il n'aime pas le @ de l'adresse
Si ce script tourne sur un serveur du domaine mydom.fr, le @et la suite

sont inutiles. Il est possible que PHP; sur ton serveur, n'admette pas
de s'adresser à qqun qui ne soit pas dans son domaine... L'astuce alors
est de créer une adresse dans le domaine du serveur, et de rediriger
cette adresse vers l'adresse extérieure au domaine que l'on veut.


si je mets $adresse = "";
c'est les cotes (") qu'il n'aime pas...
Ca c'est bizarre car tel que tu l'as écrit ton script ne devrait pas

marcher...

Avatar
laurent sturm
Salut,
D'aprés le manuel de php, l'utilisation de la fonction mail se fait comme il
suit:
bool mail ( string to, string subject, string message [, string
additional_headers [, string additional_parameters]])

exemple:
mail("", "Mon Sujet", "Ligne 1nLigne 2nLigne 3");

la variable $adresse doit donc être une chaine de caractère donc
$adresse=""

Tu peux aussi essayer:
$adresse ="Toto"
peut être que tu auras plus de chance !

autre info:
Note : Assurez-vous qu'il n'y ait aucune nouvelle ligne (ou d'autres espaces
ou caractères blancs) dans les paramètres to ou subject, car cela peut avoir
des effets secondaires irrationnels.


@+



"yenapas" a écrit dans le message de
news:cb8uog$k6e$
Bonjour

J'envoi un petit formulaire avec ce script.. mais j'ai un petit souci

<?php
$adresse = ;
$msg = $_POST["nom"]."n";
$msg .= $_POST["prenom"]."n";
$msg .= $_POST["adresse"]."n";
if(!mail($adresse, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

dans erreur.log il n'aime pas le @ de l'adresse

si je mets $adresse = "";
c'est les cotes (") qu'il n'aime pas...

help.. merci


Avatar
yenapas
Merci mais j'ai corrigé, il manquait les "'" pour la variable $adresse.

a+
"yenapas" a écrit dans le message de
news:cb8uog$k6e$
Bonjour

J'envoi un petit formulaire avec ce script.. mais j'ai un petit souci

<?php
$adresse = ;
$msg = $_POST["nom"]."n";
$msg .= $_POST["prenom"]."n";
$msg .= $_POST["adresse"]."n";
if(!mail($adresse, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

dans erreur.log il n'aime pas le @ de l'adresse

si je mets $adresse = "";
c'est les cotes (") qu'il n'aime pas...

help.. merci


Avatar
Olivier
"yenapas" wrote in news:cb8uog$k6e$
reader2.wanadoo.fr:

Bonjour

J'envoi un petit formulaire avec ce script.. mais j'ai un petit souci

<?php
$adresse = ;
$msg = $_POST["nom"]."n";
$msg .= $_POST["prenom"]."n";
$msg .= $_POST["adresse"]."n";
if(!mail($adresse, "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>

dans erreur.log il n'aime pas le @ de l'adresse

si je mets $adresse = "";
c'est les cotes (") qu'il n'aime pas...

help.. merci


Slt,

Essaye peut être en changeant de nom de variable (ou même en enlevant
cette variable) pour l'adresse à laquelle ça doit être envoyé, car il y
a déjà un champ "adresse" qui est celui qu'à donné l'utilisateur ...
Donc au final :

<?php

$msg = $_POST["nom"]."n"
.$_POST["prenom"]."n"
.$_POST["adresse"]."n";
if(!mail("", "Resultat formulaire", $msg))
{
echo "ERREUR : l'e-mail n'a pas été envoyé";
}
?>


Si ça ne marche pas, donne moi l'erreur qu'affiche PHP, c'est ça qui
permet de comprendre ce qui merde ...

Bye
O.L.