Ajout de parmaetres dans formulaire

Résolu/Fermé
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014 - 9 janv. 2009 à 18:33
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 19 janv. 2009 à 21:49
Bonjour,
ouais be cela fait exactement 3 mois que je travaille sur le formulaire j'ai travaillé enormémént sur le site du zero malheureusement matteo ne parle pas de la fonction mail il parle de l'upload des fichiers a travers le formulaire mais pas de cette foutue fonction mail
alors j'ai glané ci et la des infos mais a l'arrivée je n'arrive toujours pas a comprendre cette fonction
en fait le formualire suivant marche :

http://www.php-astux.info/script-formulaire-contact.php

mais si je veux rajouter des champs je ne sais pas comment faire
vu que matteo a super bien expliqué comment faire les champs (j'ai zappé le debut avec tous les metas sinon ca devenait un peu trop enoorme) :
voici la page html



<body>

<div class="topbanner2"> <img src="images/shows org.png" alt="topbanner dj animation 83 13"/></div>

<div class="form">
<p>Pour une demande de devis, merci de remplir les champs ci-dessous<br/>
Nous vous garantissons une réponse rapide sous 24 H<br/>
<small>(les champs marqués d'une asterixe sont obligatoires)</small></p>

<li><form name="formulaire" method="post" action="traitement.php" >
<label for="nom" >nom:</label><br/>
<input type="text" name="nom" id="nom" size="30" maxlength="20" /><b> *</b></li>
<p><!-- Valeur par défaut de l'objet du mail -->
<input type="hidden" name="objet" value="Vous avez un nouveau message" />
</p>
<li><label for="prenom" > prenom :</label><br/>
<input type="text" name="prenom" id="prenom" size="30" maxlength="20" /><b> *</b></li>

<li><label for "adresse du demandeur">adresse du demandeur:</label><br/>
<textarea name ="fadresse_du_demandeur" id ="fadresse_du_demandeur" rows="10" cols="50"></textarea></p></li><br/>

<li><label for="tel fixe" style=" margin-left: 0%" >tel fixe:</label><br/>
<input type="text" name="ftel_fixe" id="ftel_fixe" size="15" maxlength="20" /></li>

<li><label for="tel port" >tel port:</label><br/>
<input type="text" name="ftel_port" id="ftel_port" size="15" maxlength="20" /><b> *</b></li>

<li><label for="votre email" >votre email:</label><br/>
<input type="text" name="fvotre_email" id="fvotre_email" size="30" maxlength="20" /><b> *</b></li>

<li><label for="evenement" >evenement:</label><br/>
<input type="text" name="fevenement" id="fevenement" size="30" maxlength="20" /><b> *</b></li>

<li><label for="date de la prestation" >date de la prestation:</label><br/>
<input type="text" name="fdate_de la prestation" id="fdate_de_la_prestation" size="30" maxlength="20" /><b> *</b></li>

<li><label for="nombre de pers" >nombre de personnes presentes:</label><br/>
<input type="text" name="fnombre_de_pers" id="fnombre_de_pers" size="30" maxlength="20" /><b> *</b></li>

<li><label for="budget">budget:</label><br/>
<input type="text" name="fbudget" id="fbudget" size="30" maxlength="20" /><b> *</b></li><br/>

<li><label for "adresse de la presta">adresse de la prestation:</label><br/>
<textarea name ="fadresse_de_la_presta " id ="fadresse_de_la_presta" rows="10" cols="50"></textarea><b> *</b></p></li>

<li><label for "infos compl">infos complementaires:</label><br/>
<textarea name ="finfos_compl" id ="finfos_compl" rows="10" cols="50"></textarea><b></p></li>

<li><input name="submit" type="submit" value="envoyer" style="margin-top:5%" /> <input type="reset" value="remettre a zero" />
<INPUT type=hidden name=afficher value=ok></li></form>



</div>


</body></html>

après dans traitement.php je ne sais pas comment rajouter les champs correspondants

c'est cool de regarder merci a tous

23 réponses

Revan26914 Messages postés 1778 Date d'inscription dimanche 14 octobre 2007 Statut Contributeur Dernière intervention 15 octobre 2019 320
9 janv. 2009 à 19:14
Bonsoir,

C'est pourtant pas les infos sur la fonction mail qui manquent sur Internet:

==> https://www.php.net/manual/fr/book.mail.php

==> http://www.commentcamarche.net/faq/sujet 117 php fonction mail

==> https://www.vulgarisation-informatique.com/mail.php


après dans traitement.php je ne sais pas comment rajouter les champs correspondants


Peux-tu mettre le code PHP stp ?



Cordialement

Revan
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
9 janv. 2009 à 20:59
bjr
merci d'avoir repondu
C'est pourtant pas les infos sur la fonction mail qui manquent sur Internet:
je sais je les ai quasiment tous vus bon be je vais encore un peu plus me prendre la tete la dessus ce que je disais c'est que malgré que il y en ait des dizaines de tutos sur cette fonction mail j'en ai jamais trouvé un de super clair comme mateo les fait dans son site du zero je lui fait pas de la pub mais il explique vraiment bien alors je vais essayer encore et puius si j'y arrive pas je paierais un webmaster pour le faire parce que ca devient relou a la fin

pour infos le code php qui correspond au html (adapté a mon formulaire) c'est :

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

et ai mis les variables qui manquaient
j'ai changé aussi la suite :
// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($email != '') && ($objet != '') && ($message != ''))

e, fait j'ai regardé et lorsqu'il affiche ce msg c'est que une de mes variables est vide mais pourtant elles le sont pas

je vous donne le html :
http://www.showsanddjs.fr/downloaddiv/phphtml/index-5.html

et le fichier php modifié:

<?php
header('Content-Type: text/html; charset=ISO-8859-1');/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'chXXXXX.bXXXXX@orange.fr'; (mail supprimer pour éviter les SPAM)

// copie ? (envoie une copie au visiteur)
$copie = 'oui'; // 'oui' ou 'non'

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"index-5.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

// on teste si le formulaire a été soumis
if (!isset($_POST['submit']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}

// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
$adresse_du_demandeur = (isset($_POST['adresse_du_demandeur'])) ? Rec($_POST['adresse_du_demandeur']) : '';
$tel_fixe = (isset($_POST['tel_fixe'])) ? Rec($_POST['tel_fixe']) : '';
$tel_port = (isset($_POST['tel_port'])) ? Rec($_POST['tel_port']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$evenement = (isset($_POST['evenement'])) ? Rec($_POST['evenement']) : '';
$datedelapresta = (isset($_POST['datedelapresta'])) ? Rec($_POST['datedelapresta']) : '';
$nombre_de_pers = (isset($_POST['nombre_de_pers'])) ? Rec($_POST['nombre_de_pers']) : '';
$budget = (isset($_POST['budget'])) ? Rec($_POST['budget']) : '';
$adresse_de_la_preta = (isset($_POST['adresse_de_la_presta'])) ? Rec($_POST['adresse_de_la_presta']) : '';
$infos_compl = (isset($_POST['infos_compl'])) ? Rec($_POST['infos_compl']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($prenom != '') && ($adresse_du_demandeur != '') && ($tel_port != '') && ($email != '') && ($evenement != '') && ($datedelapresta != '') &&
($nombre_de_pers != '') && ($budget != '') && ($adresse_de_la_preta != ''))
{
// les 10 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.' <'.$email.'>' . "\r\n";

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);

// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="index-5.html">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))

et ca marche po chuis deg
0
Revan26914 Messages postés 1778 Date d'inscription dimanche 14 octobre 2007 Statut Contributeur Dernière intervention 15 octobre 2019 320
9 janv. 2009 à 23:42
D'abord une petite précision:

On ne peut pas envoyer des e-mails depuis WAMP Server (enfin si on pourrait, mais il faut faire certaines manipulations pour cela), donc si tu essais ton formulaire depuis WAMP, c'est normal que ça ne marche pas ;-)


Je vais essayer de t'expliquer le fonctionnement de la fonction mail.

Il s'agit donc d'une fonction (je ne sais pas si les fonctions sont traitée dans le cours de Mateo ??) qui prend 4 paramètres:

1) Ton adresse e-mail

2) Le sujet du mail

3) Le contenu du mail

4) L'en-tête de l'e-mail (l'en-tête peut prendre plusieurs informations, comme par exemple le nom et l'e-mail de l'envoyeur)

Donc la fonction mail s'utilise comme ça:

mail('ton adresse email', 'le sujet du mail', 'le contenu du mail', 'en-tête du mail');



Revenons un peu à l'en-tête. Pour stocker le nom de l'expéditeur dans l'en-tête on utilise la syntaxe suivante:
From: "Nom de l'expéditeur" <adresse mail de l'expéditeur>


Donc:

$header = "From: ". $nomExpediteur . " <" . $email. ">\r\n";



Au final, on aura un script de traitement du formulaire qui ressemblera à ça:
<?php
if (isset($_POST['nom']) ANS isset($_POST['email_expediteur']) AND isset($_POST['contenu']) AND isset($_POST['email_expediteur']) AND isset($_POST['sujet']))
{
$nomExpediteur = $_POST['nom'] ; // nom de l'expéditeur
$email = $_POST['email_expediteur']; // E-mail de l'expéditeur
$destinataire = "ton_adresse_email@adress.com"; // Tu rentres ici ton adresse email
$contenu_mail = $_POST['contenu'] ; // Contenu de l'e-mail
$sujet = $_POST['sujet']; // Sujet de l'e-mail
$header = "From: ". $nomExpediteur . " <" . $email . ">\r\n"; // En-tête de l'e-mail

mail($destinataire, $sujet, $contenu_mail, $header); // Commande d'envoi de l'email
}
else echo 'Tous les champs du formulaire n'ont pas été remplis !!';
?>



Note: Il ne faut pas oublier de protéger les variables $_POST, ce que je n'ai pas fait dans mon exemple ;-)

0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
10 janv. 2009 à 12:26
merci je vais essayer de voir ca
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
10 janv. 2009 à 12:51
salut,

asterixe, c'est la femme d'Astérix, toi ce que veux c'est une astérisque.
-;o)
0

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

Posez votre question
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
10 janv. 2009 à 13:09
bjr
merci encore une fois revan
pour repondre a ta reponse en fait je peux me servir de wamp pour le form de contact parce que quand je l'ai installé j'ai mis mon adresse email (on peut aussi le faire via .ini dans le fichier d'install mais bon) par contre i m'envoie bien l'email mais il m'en envoie un 2° a chaque fois ou il y a mail delivery fail etc.. bref

ensuite pour ton script il est bien moins fourni que celui du site qui ets posté plus haut mais peut etre est ce suffisant pour la protection je connais les htmlspecialchars ca matteo l'explique très bien

enfin te tiens au jus a+
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
10 janv. 2009 à 13:14
i m'envoie bien l'email mais il m'en envoie un 2° a chaque fois
oula !!!!!!!!!!!!

ça on a déjà eu !
je crois bien que Revan était sur le coup (bonjour à lui au passage, les vœux, tout ça…)

je cherche la discussion !

<edit>

la discussion en question.
solution possible en dernier post.
mais il n'y avait pas Revan !
-:oD

</edit>
0
Revan26914 Messages postés 1778 Date d'inscription dimanche 14 octobre 2007 Statut Contributeur Dernière intervention 15 octobre 2019 320 > Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016
10 janv. 2009 à 19:55
Bonsoir Dalida ^^


ensuite pour ton script il est bien moins fourni que celui du site qui ets posté plus haut

C'est normal, c'est un simple script d'exemple pour illustrer mon explication de la fonction mail ;-)

0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
12 janv. 2009 à 13:58
ok merci pour ton aide
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 18:31
bjr
je sais pas si dalida va voir cette question mais un peu + tard je me suis apercu d'un truc selon ta description
il y a donc
mail('ton adresse email', 'le sujet du mail', 'le contenu du mail', 'en-tête du mail');
mais si je veux ajouetr des trucs dans le contenu du mail je fais comment ?
par ex rajouter le budget que l'expediteur a pour acheter quqchose ou autre chose.
merci
0
Revan26914 Messages postés 1778 Date d'inscription dimanche 14 octobre 2007 Statut Contributeur Dernière intervention 15 octobre 2019 320
19 janv. 2009 à 18:44
Tu rajoutes cela dans la variable $contenu_mail comme cela:

$contenu_mail = $_POST['contenu'] . 'ce que tu veux rajouter';


ou tu peux aussi:

$contenu_mail = $_POST['contenu'] ;
$contenu_mail .= 'ce que tu veux rajouter';




Mais comme Dalida l'a dit, donne nous le bout de code pour qu'on t'aide plus précisément ;)

0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 18:34
salut,

il y a donc
mail('ton adresse email', 'le sujet du mail', 'le contenu du mail', 'en-tête du mail');
mais si je veux ajouetr des trucs dans le contenu du mail je fais comment ?

et bien tu ajoutes " des trucs" à 'le contenu du mail'.

montre nous le bout de code que tu utilises maintenant qu'on te dise où injecter le supplément d'infos.
0
irongege Messages postés 40847 Date d'inscription jeudi 1 novembre 2007 Statut Modérateur Dernière intervention 29 juin 2023 5 073
19 janv. 2009 à 19:07
Je reposte le message sans l'adresse email comme il a été demandé :

merci mais il me semble =que c'est la concatenation ou un truc dans ce genre c'est rajouter une variable dans la variable je suppose?
si c'est ca j'ai qu'a revoir le tuto de matteo c'est sympa de me l'avoir suggerré

pour info mon code c'est cui la: (c'est très gros)

<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'xxxxxxxxi@sss.fr';

// copie ? (envoie une copie au visiteur)
$copie = 'oui'; // 'oui' ou 'non'

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"contact.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}

// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($email != '') && ($objet != '') && ($message != ''))
{
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.' <'.$email.'>' . "\r\n";

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("’","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);

// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="contact.html">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))
?>

en fait dans la configuration en haut faudrait que je mette :

$message=$message.','.$budget,','$adresse_de_la_prestation; etc non?
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 19:10
merci !
-:o)
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 19:16
en fait dans la configuration en haut faudrait que je mette :
$message=$message.','.$budget,','$adresse_de_la_prestation; etc non?

oui mais pense aux espaces quand même !
tu peux aussi ajouter des retours à la ligne, dans ce cas en utilisant ".=" et en le présentant ligne par ligne c'est plus compréhensible.
$message .= PHP_EOL;
$message .= 'Budget : '.$budget.PHP_EOL;
$message .= 'Adresse : '.$adresse_de_la_prestation.PHP_EOL;
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 19:34
c'est fou ce que tu connais comme choses dalida mais apparement en mettant soit ton code ou le mien que j'ai suggeré plus haut :
$message=$message.','.$budget,','$adresse_de_la_prestation;
ou le tien :
$message .= PHP_EOL;
$message .= 'Budget : '.$budget.PHP_EOL;
$message .= 'Adresse : '.$adresse_de_la_prestation.PHP_EOL;

ca marche po
l'erreur c'est

Notice: Undefined variable: message in C:\wamp\www\tests\mail\traitement3.php on line 9

Notice: Undefined variable: budget in C:\wamp\www\tests\mail\traitement3.php on line 9

Notice: Undefined variable: adresse_de_la_presta in C:\wamp\www\tests\mail\traitement3.php on line 9

Votre message nous est bien parvenu !

je recois bien le message mais pas les variables que j'ai ajouté comme tu m'as dit ou comme j'ai essayé de faire je comprend pas parce que tout a l'air juste ca passe po comme d'hab avec php (ca aurait du s'appeller pdt prise de tete...)
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 19:44
il faut que ta variable $message soit définie !

donc il faudrait ajouter ces lignes avant "// Envoi du mail ".
et il faut que les deux autres variables soit aussi définies.
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 19:57
j'ai essyé de les definir j'y arrive po il me remarque a chaque fois undefined ...

j'ai fait :

$budget = budget;
$adresse_de_la_presta = adresse_de_la_presta;
$message = $message.$budget.$adresse_de_la_presta;
je sais chuis nul
te prend pas la tete j'y arriverais bien c'est sympa de m'avoir aidé
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 20:02
si tu as effectivement définit chaque variable avant de les utiliser, il n'y a pas de raison pour qu'il te réponde "undefined"…

essaie avec ça et montre nous l'erreur si il y en a une (avec en plus la ligne de code incriminée plus la ligne précédente et la ligne suivante).
$budget = 'budget';

$adresse_de_la_presta = 'adresse_de_la_presta';

$message = $message.$budget.$adresse_de_la_presta; 
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 20:31
bon je vois que t'es coool comme mec voila ce qu'il me dit après avoir mis ton code (que je n'avais pas mis exactement pareil car je n'avais pas mis budget et adresse_de_la_presta avec les apostrophes comme toi)


Notice: Undefined variable: message in C:\wamp\www\tests\mail\traitement3.php on line 11

Votre message nous est bien parvenu !

en fait les 2 lignes que j'ai corrigé comme tu m'as dit sont bien passées

$destinataire = 'myselfi@orange.fr';
$budget = 'budget';
$adresse_de_la_presta = 'adresse_de_la_presta';
$message = $message.$budget.$adresse_de_la_presta;

// copie ? (envoie une copie au visiteur)
$copie = 'oui'; // 'oui' ou 'non'

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"contact.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

mais c'est toujours cette ligne a la ....ligne 19 : $message = $message.$budget.$adresse_de_la_presta; qui prend la tete
.
voila chuis deg si tu peux me repondre c'est cool ...
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 20:42
modifie de suite ton message (icône avec un petit crayon à côté du post en question) et efface l'adresse mail !!!!!!!!

j'ai déjà demandé aux modos pour le message au dessus !

et pour le code utilise le bouton "garder la mise en forme…"

je reviens pour le reste.
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 20:45
$budget = 'budget';
$adresse_de_la_presta = 'adresse_de_la_presta';
$message = $message.$budget.$adresse_de_la_presta; 

il faut que tu mettes ça dans un endroit du script où $message a déjà été défini, c'est à dire après la ligne "$message = $_POST[]…"
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 21:16
dalida t'assures toujours autant j'ai fait grace a toi de graaaaaaves progrès mais je recois le budget sur mon mail mais pas l'adresse de la presta
j'ai bien mis le point virgule après :

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
$budget = (isset($_POST['budget'])) ? Rec($_POST['budget']) : '';
$adresse_de_la_presta = (isset($_POST['adresse_de_la_presta'])) ? Rec($_POST['adresse_de_la_presta']) : '';

// on definit les variables
$message = $message.$budget.$adresse_de_la_presta;
comprend pas
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
19 janv. 2009 à 21:20
et dans ton formulaire tu as bien nommé le champ qui doit contenir l'adresse ?
genre :
name="adresse_de_la_presta" id="adresse_de_la_presta"

et tu devrais simplifier le nom, ça peut éviter des erreurs de frappe, "presta" ou "adresse" c'est amplement suffisant !
-;o)
0
badassnigga Messages postés 56 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 5 décembre 2014
19 janv. 2009 à 21:33
j'ai mis :

<form id="contact" method="post" action="traitement3.php">
<p>Vos coordonnées</p>
<li><p><label for="nom">Nom :</label><br><input type="text" id="nom" name="nom" tabindex="1" /></label></li></p>
<li><p><label for="email">Email :</label><br><input type="text" id="email" name="email" tabindex="2" /></li></p>
<li><label for="budget">budget:</label><br/>
<input type="text" name="budget" id="budget" size="30" maxlength="20" /><b> *</b></li><br/>
<li><label for="adresse">adresse de la prestation:</label><br/>
<textarea name ="adresse" id ="adresse" rows="10" cols="50"></textarea><b> *</b></p></li>




<p>Votre message :</p>
<li><label for="objet">Objet :</label><br><input type="text" id="objet" name="objet" tabindex="3" /></li>
<li><label for="message">Message :</label><br><textarea id="message" name="message" tabindex="4" cols="30" rows="8"></textarea></li>


<p><input type="submit" name="envoi" value="Envoyer le formulaire !" /></p>
</form></div>


et dans le php j'ai mis

$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
$budget = (isset($_POST['budget'])) ? Rec($_POST['budget']) : '';
$adresse = (isset($_POST['adresse'])) ? Rec($_POST['adresse']) : '';

// on definit les variables
$message = $message.$budget.$adresse;

et je recois(dans le corps du message de l'email) le message , le budget mais pas l'adresse.... trop nul..

et aussi le undelivered mail return to sender (message non delivré j'ai thunderbird anglais)ca c'est a chaque fois mais je corrigerais ca + tard..
0