Formulaire inopérant en PHP

Tanaka56 Messages postés 124 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 29 janvier 2009 - 17 nov. 2006 à 14:08
Tanaka56 Messages postés 124 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 29 janvier 2009 - 19 nov. 2006 à 18:06
Bonjour à tous.
Mon hébergeur a activé le registrar Global Off pour des raisons de sécurité, impossible de récupérer la variable sans savoir sa provenance (variable de session, de formulaire...)
J'ai modifié ma page qui se trouve ci-dessous, je ne reçois toujours rien.
Les variables "key et val" ne se trouvent pas dans ma page principale. A quoi elles servent ? Mystère.
Je voudrais savoir ce qu'il faut modifier pour que mon formulaire fonctionne à nouveau. Je suis débutant. Merci pour vos réponses. Cordialement. Al.




<?php
$name=$_POST['name'];
$email=$_POST['email'];
$date=$_POST['date'];
$key=$_POST['key'];
$val=$_POST['val'];




$subject = "Message";
$TO = "
[mailto:monemail@monsite.com
monemail@monsite.com
]
";
$h = "From: " . $email;// Adresse email de l'expéditeur
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
  $message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
//Header("Location:
http://www.monsite.com/merci.html
");
echo $TO;" ";
echo $h;
echo $email;
echo $key;
echo $val;
echo $name;
?>





<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>








 

2 réponses

audayls Messages postés 373 Date d'inscription samedi 9 juillet 2005 Statut Membre Dernière intervention 11 août 2008
19 nov. 2006 à 17:30
Salut,
Pourquoi utiliser "$HTTP_POST_VARS" alors que tu utilises "$_POST" au debut ?

Le paramètre "register global" configuré sur "off" permet d'utiliser les variables globales comme "$_POST" "$_GET" etc... c'est important puisque désormais tu sais d'où tes variables proviennent.

<?php
if (isset($_POST['name']) AND isset($_POST['email']) AND isset($_POST['date']) AND isset($_POST['key']) AND isset($_POST['val'])) {
 $message = '';
 if (isset($_POST)) while (list($key, $val) = each($_POST)) $message .= $key.' = '.$val."\n";
 mail([mailto:'monemail@monsite.com' 'monemail@monsite.com'], 'Message', $message, 'From : '.$_POST['email']);
 //Header("Location: http://www.monsite.com/merci.html ");
 echo 'To : [mailto:monemail@monsite.com
monemail@monsite.com
] />From : ',$_POST['email'],'
Contenu de la variable "email" passée en POST : ',$_POST['email'],'
Contenu de la variable "key" passée en POST : ',$_POST['key'],'
Contenu de la variable "val" passée en POST : ',$_POST['val'],'
Contenu de la variable "name" passée en POST : '.$_POST['name'];
}
?>

For every choice, a consequence (Fable)
0
Tanaka56 Messages postés 124 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 29 janvier 2009
19 nov. 2006 à 18:06
Merci Audalys pour ton aide.
En fait cela a l'air plus compliqué que ça.
Depuis plusieurs jours je suis sur ce formulaire, j'ai posté sur différents forum, en vain.
Voilà ce que j'ai mis (ci-dessous) et cela ne fonctionne pas. J'ai même contacté l'hébergeur (Hosteur), pour l'instant pas de réponse.
Le module que tu m'as donné ne me renvoi pas les données, celui qui est dessous les renvois sur ma page PHP mais rien dans la B.A.L.

Alors si tu as une solution!
Cordialement



<?php
$email=$_POST['email'];
$subject = "Message";
$TO = "[mailto:mon_email@monsite.com mon_email@monsite.com]";
$h = "From: " . $email;// Adresse email de l'expéditeur
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
echo "TO: $TO
subject: $subject
message: $message
header: $h";
mail($TO, $subject, $message, $h);
Header("Location: http://www.monsite.com/merci.html");
?>
0
Rejoignez-nous