PHP impossible de voire le nom etc...

Fermé
nicotech - 12 juin 2008 à 23:24
 Sixpo - 27 juin 2012 à 21:12
Bonjour, j'ai créer un formulaire où les gens mettent leurs nom, prénom, tél, email, sujet, message.
email, et le sujet apparait dans le mail en entête donc là parfait, le message apparait aussi mais pas le reste (nom, prenom etc...) et j'ai beau changé, faire des modif je n'y arrive pas je voudrais une aide svp.
cette ligne est l'endroit ou doit appraitre le tout mais si je rajoute le nom etc... le mail refuse de s'envoyer

if (@mail($email_webmaster,$titre_cache.$_POST["titre"], $_POST["message"],$entete)){






<?php
$cryptinstall="./crypt/cryptographp.fct.php";
include $cryptinstall;
?>
<?php

$email_webmaster = "kakalol@orange.fr";

$titre_cache = "une nouvelle question vous à était posez : ";
// === traitement des données du formulaire ============================================================
if (isset($_POST["envoyer"])){
// le formulaire a été soumis
$etat = "erreur";
// Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur
// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
if (isset($_POST["nom"])) {
$_POST["nom"]=trim(stripslashes($_POST["nom"]));
}

if (isset($_POST["prenom"])) {
$_POST["prenom"]=trim(stripslashes($_POST["prenom"]));
}

if (isset($_POST["tel"])) {
$_POST["tel"]=trim(stripslashes($_POST["tel"]));
}

if (isset($_POST["email_expediteur"])) {
$_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
}
if (isset($_POST["titre"])) {
$_POST["titre"]=trim(stripslashes($_POST["titre"]));
}
if (isset($_POST["message"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
}

if (empty($_POST["email_expediteur"])) {
// il manque l'email de l'expéditeur
$erreur="Saisissez votre adresse email...";
}
elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){
// l'adresse e-mail n'est pas valide
$erreur="Votre adresse e-mail n'est pas valide...";
}
elseif (empty($_POST["nom"])) {
// le message est vide
$erreur="Saisissez votre nom...";
}
elseif (empty($_POST["prenom"])) {
// le message est vide
$erreur="Saisissez votre prenom...";
}
elseif (empty($_POST["tel"])) {
// le message est vide
$erreur="Saisissez votre n° de tèlèphone...";
}
elseif (empty($_POST["message"])) {
// le message est vide
$erreur="Saisissez un message...";
}
elseif (empty($_POST["code"])) {
// le code n'est pas saisi
$erreur="Saisissez le code de verification...";
}
else {
// --- Vérification de la validité du code captcha ---
if (chk_crypt($_POST['code']))
// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
$etat="ok";
// --- Le code captcha n'est pas valide ---
else $erreur="Code de verification non valide ...";
}
}
else {
// --- le formulaire n'a pas été soumis ---
$etat="attente";
}
// === fin de traitement des données du formulaire =======================================================
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>(AVAD) association varoise d'aide à domicile</title>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
<link rel="stylesheet" href="info.css" type="text/css"/>
</head>
<body>

<?php
if ($etat!="ok"){// le formulaire n'a pas été soumis, ou soumis avec une erreur
if ($etat=="erreur"){
//le formulaire a été soumis avec une erreur
echo "<p><strong>".$erreur."</strong></p>\n";
// afficher le message d'erreur
}
?>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>?<?php echo SID; ?>">
<p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</label><br />
<input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php
if (!empty($_POST["email_expediteur"])) {
// l'adresse email de l'expéditeur a été saisie: la réafficher
echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
}

?>" />
</p>
<p><label for="nom">Votre nom (obligatoire):</label><br />
<input type="text" size="40" name="nom" id="nom" value="<?php
if (!empty($_POST["nom"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["nom"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="prenom">Votre prénom (obligatoire):</label><br />
<input type="text" size="40" name="prenom" id="prenom" value="<?php
if (!empty($_POST["prenom"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["prenom"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="tel">Votre n°de tèlèphone (obligatoire):</label><br />
<input type="text" size="40" name="tel" id="tel" value="<?php
if (!empty($_POST["tel"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["tel"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="titre">Titre de message (facultatif):</label><br />
<input type="text" size="40" name="titre" id="titre" value="<?php
if (!empty($_POST["titre"])) {
// le titre du message a été saisi: le réafficher
echo htmlspecialchars($_POST["titre"],ENT_QUOTES);
}
?>" />
</p>
<p><label for="message">Message (obligatoire):</label><br />
<textarea name="message" id="message" cols="40" rows="5"><?php
if (isset($_POST["message"])) {
// le message a été saisi: le réafficher
echo htmlspecialchars($_POST["message"],ENT_QUOTES);
}
?></textarea>
</p>
<?php dsp_crypt(0,1); ?>
<p><input type="text" name="code" /></p>
<p><input type="submit" name="envoyer" value="Envoyer" />
</p>
</form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "Return-Path: ". $email_webmaster . "\n";
$entete .= "MIME-Version: 1.0";
$ip.="Adresse IP: ". $_SERVER['REMOTE_ADDR'] . "\n";
$nav.="Navigateur: ". $_SERVER['HTTP_USER_AGENT'] . "\n\n";
if (@mail($email_webmaster,$titre_cache.$_POST["titre"], $_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";
}
else {
// erreur lors de l'envoi du mail
echo "Un problème s'est produit lors de l'envoi du message.\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a>\n";
}
}
?>

</body>
</html>

5 réponses

adgem0 Messages postés 119 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 7 mai 2010 160
13 juin 2008 à 10:01
Tu dois inclure le nom, prénom et toutes les autres données entrées par l'expéditeur, au début du message.
Ce qui devrait donner :
$message = "NOM : $_POST['nom']<br>"
	 ."Prénom : $_POST['prenom']<br>"
	 ."Adresse email : $_POST['email_expediteur']<br>"
	 ."Numero de tel. : $_POST['tel']<br><br>"
	 .$_POST['message'];

Et dans ta fonction mail() remplace ton $_POST['message'] par la variable $message
0
merci de ta réponse je vais assayer de suite.

edit: heu ^^ tu vas me prendre pour un boulet je me suis embrouiller il fait quee suprime :

if (isset($_POST["nom"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
}

if (isset($_POST["prenom"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
}

if (isset($_POST["tel"])) {
$_POST["message"]=trim(stripslashes($_POST["message"]));
} etc...

et que je les remplace par :

$message = "NOM : $_POST['nom']<br>"
."Prénom : $_POST['prenom']<br>"
."Numero de tel. : $_POST['tel']<br><br>"
.$_POST['message']; ?
0
non ça ne marche pas j'ai cette erreur

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/avad83f/public_html/info.php on line 181

line 181: c'est où j'ai rajouté :

$message = "NOM : $_POST['nom']<br>"
."Prénom : $_POST['prenom']<br>"
."Numero de tel. : $_POST['tel']<br><br>"
.$_POST['message']; ?

c'est une prise de tête ce formulaire merci pour ton aide
0
adgem0 Messages postés 119 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 7 mai 2010 160
13 juin 2008 à 10:29
Non, juste tu le rajoute au dessus de ça :

// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "Return-Path: ". $email_webmaster . "\n";
$entete .= "MIME-Version: 1.0";
$ip.="Adresse IP: ". $_SERVER['REMOTE_ADDR'] . "\n";
$nav.="Navigateur: ". $_SERVER['HTTP_USER_AGENT'] . "\n\n";
if (@mail($email_webmaster,$titre_cache.$_POST["titre"], $_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";

Ce qui donne :

// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "Return-Path: ". $email_webmaster . "\n";
$entete .= "MIME-Version: 1.0";
$ip.="Adresse IP: ". $_SERVER['REMOTE_ADDR'] . "\n";
$nav.="Navigateur: ". $_SERVER['HTTP_USER_AGENT'] . "\n\n";
$message = "NOM : $_POST['nom']<br>"
."Prénom : $_POST['prenom']<br>"
."Numero de tel. : $_POST['tel']<br><br>"
.$_POST['message'];
if (@mail($email_webmaster,$titre_cache.$_POST["titre"], $_POST["message"],$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";

N'oublie pas dans ta fonction mail() de remplacer ton $_POST['message'] par la variable $message
Ce qui done :

// le formulaire a été soumis sans erreur, on envoie le mail
$entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
$entete .= "Return-Path: ". $email_webmaster . "\n";
$entete .= "MIME-Version: 1.0";
$ip.="Adresse IP: ". $_SERVER['REMOTE_ADDR'] . "\n";
$nav.="Navigateur: ". $_SERVER['HTTP_USER_AGENT'] . "\n\n";
$message = "NOM : $_POST['nom']<br>"
."Prénom : $_POST['prenom']<br>"
."Numero de tel. : $_POST['tel']<br><br>"
.$_POST['message'];
if (@mail($email_webmaster,$titre_cache.$_POST["titre"], $message,$entete)){
// mail envoyé
echo "Votre message a été envoyé.<br />\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";

Et voilà ...
0
merci de t'es réponse trés rapide, mais malheuresement à ça ne marche toujours pas j'ai ce message

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/avad83f/public_html/info.php on line 181
0
adgem0 Messages postés 119 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 7 mai 2010 160
13 juin 2008 à 10:46
Oui en effet c'est une erreur de ma part !
Remplace donc tout ça :

$message = "NOM : $_POST['nom']<br>"
."Prénom : $_POST['prenom']<br>"
."Numero de tel. : $_POST['tel']<br><br>"
.$_POST['message'];

Par cette ligne :
$message = "NOM : ".$_POST['nom']."<br>Prénom : ".$_POST['prenom']".<br>Numero de tel. : ".$_POST['tel']."<br><br>".$_POST['message'];
0
marche pas j'ai cette erreur :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/avad83f/public_html/info.php on line 181

il me semble que c'est à cause :

$message = "NOM : ".$_POST['nom']
du " à 'tel']."<
."<br>Prénom : ".$_POST['prenom']".<br>Numero de tel. : ".$_POST['tel']."<br><br>".$_POST['message'];

si je le met comme ça 'tel]".< le mail part mais il est comme ça :

NOM : <br />Prénom : <br />Numero de tel. : <br /><br />salut ça marche alors ^^ alors ^^ alros ^^

donc toujours pas de nom , prenom qui s'affiche
0
adgem0 Messages postés 119 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 7 mai 2010 160
13 juin 2008 à 11:17
Oui encore mille fois pardon ...
Je sais pas où j'ai la tête aujourd'hui !
Voila la bonne ligne :
$message = "NOM : ".$_POST['nom']."<br>Prénom : ".$_POST['prenom']."<br>Numero de tel. : ".$_POST['tel']."<br><br>".$_POST['message'];
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tu n'as pas à t'excuser c'est moi avec ce formulaire qui prend la tête ^^

j'ai mis la ligne le mail marche il part mais je reçoit comme ça

NOM : <br>Prénom : <br>Numero de tel. : <br><br>Pour toute question concernant nos services où autre, veuillez remplir
le formulaire ci-dessous

marche toujour pas mais je crois que maintenant l'erreur viens d'ailleur ?
0
c'est bon j'ai réglé le problème tous marche malgré que le message ce montre comme ça :
NOM : naruto<br>Prénom :manga<br>Numero de tel. : 0918475658<br><br>fhdjj

c'est rien du tout je peut me débrouiller, merci, merci, merci ,merci et un petit merci pour la route ^^

tu me sauve

encore merci
0
bonjour
en le mettant sous cette forme il n'y a plus de probleme

$message = "Non-Prénom : ".$_POST['nom']."
Numero de tel. : ".$_POST['tel']."
Adresse : ".$_POST['adresse']."

Le Message
".$_POST['message'];
le message arrivera ainsi
nom-prénom:
tel:
adresse:

le message:
0