begin process at 2012 05 31 07:15:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Problème réception données d'un formulaire de contact


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème réception données d'un formulaire de contact

jeudi 8 octobre 2009 à 19:00:05 | Problème réception données d'un formulaire de contact

lennynero58




lennynero58
Bonjour à tous. Voilà j'ai mis un formulaire en ligne sur mon site qui fontionne très bien mais une seule chose me manque:
Je ne récupère pas tous les champs, il me manque le prénom et l'adresse?
voici le code que j'utilise pour l'envoi : (merci de votre aide)
========================================================
<?php
$nom=$HTTP_POST_VARS['nom'];
$prenom=$HTTP_POST_VARS['prenom'];
$adresse=$HTTP_POST_VARS['adresse'];
$mail=$HTTP_POST_VARS['mail'];
$objet=$HTTP_POST_VARS['objet'];
$message=$HTTP_POST_VARS['message'];

/////voici la version Mine
$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";

$subject="$objet";
$destinataire="contact@monsite.fr"; //remplacez "webmaster@votre-site.com" par votre adresse e-mail
$body="$message";
if (mail($destinataire,$subject,$body,$headers)) {
echo "Votre mail a été envoyé<br>";
} else {
echo "Une erreur s'est produite";
}
?></p>
<p align="center">Vous allez bientôt être redirigé vers la page d'accueil<br>
Si vous n'êtes pas redirigé au bout de 5 secondes cliquez <a href="http://www.monsite.fr">ici
</body>
</a></p>


Voilà
je pense qu'il manque une variable

Cordialement
jeudi 8 octobre 2009 à 21:57:39 | Re : Problème réception données d'un formulaire de contact

jerome33610

Membre Club
slt,

essaye ceci :

Code PHP :
<?php
$nom=$http_post_vars['nom'];
$prenom=$http_post_vars['prenom'];
$adresse=$http_post_vars['adresse'];
$mail=$http_post_vars['mail'];
$objet=$http_post_vars['objet'];
$message=$http_post_vars['message'];

/////voici la version mine
$headers = "mime-version: 1.0\r\n";

//////ici on détermine le mail en format text
$headers .= "content-type: text/plain; charset=iso-8859-1\r\n";

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "from: $nom <$mail>\r\nreply-to : $nom <$mail>\nx-mailer:php";

$subject.="message : ".$object."\n"; //ici le message
$subject.="prenom : ".$prenom."\n"; //ici le prenom
$subject.="adresse : ".$adresse."\n"; // ici l'adresse
$destinataire="contact@monsite.fr"; //remplacez "webmaster@votre-site.com" par votre adresse e-mail
$body="$message";
if (mail($destinataire,$subject,$body,$headers)) {
echo "votre mail a été envoyé<br>";
} else {
echo "une erreur s'est produite";
}
?>
vendredi 9 octobre 2009 à 16:01:24 | Re : Problème réception données d'un formulaire de contact

lennynero58



Merci pour ton aide mais ca ne marche pas j'ai encore moins de données qu'avant
lennynero58
vendredi 9 octobre 2009 à 16:33:14 | Re : Problème réception données d'un formulaire de contact

jerome33610

Membre Club
sinon tu peux mettre le tout sur une seule page comme ceci :

Code PHP :
<?php

if(isset($_post['submit'])){
	$erreur="";
	// on nettoye les entrees
	while(list($var,$val)=each($_post)){
	if(!is_array($val)){
		$$var=strip_tags($val);
	}else{
		while(list($arvar,$arval)=each($val)){
				$$var[$arvar]=strip_tags($arval);
			}
		}
	}
	// on formate
	$nom=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $nom)));
	$prenom=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $prenom)));
	$adresse=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $adresse)));
	$codepos=trim(eregi_replace("[^0-9+]", "", $codepos));
	$ville=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $ville)));
	$email=strip_tags(trim($email));
	// on verifie
	if(strlen($nom)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; nom &raquo; est vide ou incomplet.</span>";
		$errnom=1;
	}
	if(strlen($prenom)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; prénom &raquo; est vide ou incomplet.</span>";
		$errprenom=1;
	}
	if(strlen($adresse)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; adresse &raquo; est vide ou incomplet.</span>";
		$erradresse=1;
	}
	if(strlen($codepos)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; code postal &raquo; est vide ou incomplet.</span>";
		$errcodepos=1;
	}
	if(strlen($ville)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; ville &raquo; est vide ou incomplet.</span>";
		$errville=1;
	}
	if(strlen($email)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; mail &raquo; est vide ou incomplet.</span>";
		$erremail=1;
	}else{
		if(!ereg('^[-!#$%&\'*+\./0-9=?a-z^_`a-z{|}~]+'.
		'@'.
		'[-!#$%&\'*+\/0-9=?a-z^_`a-z{|}~]+\.'.
		'[-!#$%&\'*+\./0-9=?a-z^_`a-z{|}~]+$',
		$email)){
			$erreur.="<li><span class='txterror'>la syntaxe de votre adresse e-mail n'est pas correcte.</span>";
			$erremail=1;
		}
	}
	if(strlen($message)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; message &raquo; est vide ou incomplet.</span>";
		$errmessage=1;
	}
	if($erreur==""){
		// création du message
		$titre="titre du message";
		$tete="from:".$email."\n";
		$corps.="nom : ".$nom."\n";
		$corps.="prénom : ".$prenom."\n";
		$corps.="adresse : ".$adresse."\n";
		$corps.="code postal : ".$codepos."\n";
		$corps.="ville : ".$ville."\n";
		$corps.="mail : ".$email."\n";
		$corps.="message : ".$message."\n";
		if(mail("ton@mail", $titre, stripslashes($corps), $tete)){
			$ok_mail="true";
		}else{
			$erreur.="<li><span class='txterror'>une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
		}
	}
}
?>
<? if($ok_mail=="true"){ ?>
	le message ci-dessous nous a bien été transmis, et nous vous en remercions.</span>
	<br>
	<?echo nl2br(stripslashes($corps));?>
	nous allons y donner suite dans les meilleurs délais.<br>a bientôt.</span>
<? }else{ ?>
<form action='<? echo $php_self ?>' method='post' name='form'>

	<? if($erreur){ ?>
	<b>&nbsp;erreur, votre message n'a pas été transmis</b>
	<ul><?echo$erreur?></ul>
	<? } ?>

	les champs marqué d'un * sont obligatoires

		<br>
        nom* : <input type='text' name='nom' value='<? echo stripslashes($nom);?>' size='24' border='0'>
        <br>
        prénom* : <input type='text' name='prenom' value='<? echo stripslashes($f_2);?>' size='24' border='0'>
        <br>
        adresse* : <input type='text' name='adresse' value='<? echo stripslashes($adresse);?>' size='24' border='0'>
        <br>
        code postal* : <input type='text' name='codepos' value='<? echo stripslashes($codepos);?>' size='24' border='0'>
        <br>
        ville* : <input type='text' name='ville' value='<? echo stripslashes($ville);?>' size='24' border='0'>
        <br>
        mail* : <input type='text' name='email' value='<? echo stripslashes($email);?>' size='24' border='0'>
        <br>
        message* : <textarea name='message' rows='6' cols='40'><? echo $message?></textarea>
        <br>
        <input type='submit' name='submit' value='envoyer' border='0'>

</form>
<? } ?>
vendredi 9 octobre 2009 à 16:37:36 | Re : Problème réception données d'un formulaire de contact

lennynero58



Meric encore,
mais peux-tu me dire s'il est possible dans le from de récupérer avec le nom aussi le prénom, sinon pour les reste ok

merci
lennynero58
vendredi 9 octobre 2009 à 16:50:30 | Re : Problème réception données d'un formulaire de contact

jerome33610

Membre Club
Avec ceci sa devrai fonctionner

Code PHP :
<?php

if(isset($_post['submit'])){
	$erreur="";
	// on nettoye les entrees
	while(list($var,$val)=each($_post)){
	if(!is_array($val)){
		$$var=strip_tags($val);
	}else{
		while(list($arvar,$arval)=each($val)){
				$$var[$arvar]=strip_tags($arval);
			}
		}
	}
	// on formate
	$nom=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $nom)));
	$prenom=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $prenom)));
	$adresse=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $adresse)));
	$codepos=trim(eregi_replace("[^0-9+]", "", $codepos));
	$ville=trim(ucwords(eregi_replace("[^a-za-z0-9éèàäö\ -]", "", $ville)));
	$email=strip_tags(trim($email));
	// on verifie
	if(strlen($nom)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; nom &raquo; est vide ou incomplet.</span>";
		$errnom=1;
	}
	if(strlen($prenom)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; prénom &raquo; est vide ou incomplet.</span>";
		$errprenom=1;
	}
	if(strlen($adresse)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; adresse &raquo; est vide ou incomplet.</span>";
		$erradresse=1;
	}
	if(strlen($codepos)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; code postal &raquo; est vide ou incomplet.</span>";
		$errcodepos=1;
	}
	if(strlen($ville)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; ville &raquo; est vide ou incomplet.</span>";
		$errville=1;
	}
	if(strlen($email)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; mail &raquo; est vide ou incomplet.</span>";
		$erremail=1;
	}else{
		if(!ereg('^[-!#$%&\'*+\./0-9=?a-z^_`a-z{|}~]+'.
		'@'.
		'[-!#$%&\'*+\/0-9=?a-z^_`a-z{|}~]+\.'.
		'[-!#$%&\'*+\./0-9=?a-z^_`a-z{|}~]+$',
		$email)){
			$erreur.="<li><span class='txterror'>la syntaxe de votre adresse e-mail n'est pas correcte.</span>";
			$erremail=1;
		}
	}
	if(strlen($message)<2){
		$erreur.="<li><span class='txterror'>le champ &laquo; message &raquo; est vide ou incomplet.</span>";
		$errmessage=1;
	}
	if($erreur==""){
		// création du message
		$titre="titre du message";
		$tete="from:".$email."\n";
		$corps.="nom : ".$nom."\n";
		$corps.="prénom : ".$prenom."\n";
		$corps.="adresse : ".$adresse."\n";
		$corps.="code postal : ".$codepos."\n";
		$corps.="ville : ".$ville."\n";
		$corps.="mail : ".$email."\n";
		$corps.="message : ".$message."\n";
		if(mail("ton@mail", $titre, stripslashes($corps), $tete)){
			$ok_mail="true";
		}else{
			$erreur.="<li><span class='txterror'>une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
		}
	}
}
?>
<? if($ok_mail=="true"){ ?>
	le message ci-dessous nous a bien été transmis, et nous vous en remercions.</span>
	<br>
	<?echo nl2br(stripslashes($corps));?>
	nous allons y donner suite dans les meilleurs délais.<br>a bientôt.</span>
<? }else{ ?>
<form action='<? echo $php_self ?>' method='post' name='form'>

	<? if($erreur){ ?>
	<b>&nbsp;erreur, votre message n'a pas été transmis</b>
	<ul><?echo$erreur?></ul>
	<? } ?>

	les champs marqué d'un * sont obligatoires

		<br>
        nom* : <input type='text' name='nom' value='<? echo stripslashes($nom);?>' size='24' border='0'>
        <br>
        prénom* : <input type='text' name='prenom' value='<? echo stripslashes($prenom);?>' size='24' border='0'>
        <br>
        adresse* : <input type='text' name='adresse' value='<? echo stripslashes($adresse);?>' size='24' border='0'>
        <br>
        code postal* : <input type='text' name='codepos' value='<? echo stripslashes($codepos);?>' size='24' border='0'>
        <br>
        ville* : <input type='text' name='ville' value='<? echo stripslashes($ville);?>' size='24' border='0'>
        <br>
        mail* : <input type='text' name='email' value='<? echo stripslashes($email);?>' size='24' border='0'>
        <br>
        message* : <textarea name='message' rows='6' cols='40'><? echo $message?></textarea>
        <br>
        <input type='submit' name='submit' value='envoyer' border='0'>

</form>
<? } ?>
vendredi 9 octobre 2009 à 17:04:34 | Re : Problème réception données d'un formulaire de contact

lennynero58



J'utilise mon premier script modifié avec le tiens que tu m'a envoyé en premier.
Tout est presque OK
Voici l'entête mail que je recois :
Objet : demande de rendez-vous Adresse : 1 place de la résistance 91540 ETAMPES

Tout est à la suite ! peux ton mettre une variable pour un retour ligne après la commande :
$subject.="message : ".$objet."\n";

Merci encore de ta patience
lennynero58
vendredi 9 octobre 2009 à 17:05:55 | Re : Problème réception données d'un formulaire de contact

jerome33610

Membre Club
oui bien sur

tu met ceci

Code PHP :
$subject.="message : ".$objet."\n<br>";
vendredi 9 octobre 2009 à 17:12:47 | Re : Problème réception données d'un formulaire de contact

lennynero58


Désolé mais cela ne marche pas voici ce que j'ai dans l'entête de mon email:

Objet : demande envoi de documentation <br>Adresse : St germain de marencennes 17000

Le br ets là et pas de retour à la ligne???

lennynero58
vendredi 9 octobre 2009 à 17:19:11 | Re : Problème réception données d'un formulaire de contact

jerome33610

Membre Club
désole lol
une erreur

voici :
Code PHP :
$subject.="message : ".$objet."<br>\n";


ou alors :
Code PHP :
$subject.="<br>adresse : ".$adresse."\n";





1 2 3

Cette discussion est classée dans : problème, mail, formulaire, manque, contact


Répondre à ce message

Sujets en rapport avec ce message

Problème avec mon formulaire [ par elzoc ] J'ai encore mon problème.Explication : vraiment zarbe les receptions mail via mon formulaire sont alléatoires comme si j'avais une fonction "un mail e Problème de formulaire entre 2 sites [ par Kaneda Shotaro ] J'ai réalisé en HTML un site pour un ami. Il voulait que les visiteurs puissent envoyer par mail une demande de renseignement. J'ai donc fait sur son Problème formulaire [ par HagRapMan ] Salut à tous! J'ai un petit problème avec ce script : http://www.phpcs.com/codes/ENVOYER-FORMULAIRE-MAIL_13457.aspxlorsque j'écris par exemple je t'ai modification de script sur formulaire de contact [ par pi_delannoy ] Novice en PHP, j'ai repris un formulaire de contact chez Online ( form2mail.php ) qui correspond à me problème pour envoyer un mail depuis un formulaire [ par xargin ] Bonjour, je poste ce message pour demander de l'aide. En effet, je dois envoyer un mail depuis un formulaire html. Pour cela, j'ai fait une page php envoyer le contenu d'un formulaire par mail [ par hamzvb ] Bonjour; j'ai héberger récemment mon site web, et je veux que lorsque quelqu'un remplit le formulaire contact, le contenu qui est enregistré dans la b [php]Problème formulaire [ par Aladinborioli ] Bonjour à tous, J'aurais besoin d'aide pour un petit problème avec un formulaire en php. Je vous expose le problème, vous pouvez voir le formulaire Problème espaces - récupération champs formulaire [ par ju0123456789 ] Bonjour J'ai un soucis tout bête, mais ennuyant. J'ai récupère des valeurs de ma BDD dans un champs input, cette donnée s'affiche bien, mais avec des formulaire php [ par ainfographie ] Bonjour à tous, je viens vers vous car je désespère. J'ai créé un formulaire de contact, pour mon site, j'aimerais recevoir les infos dans ma boîte ma Options pour formulaire de contact Php [ par paikan06 ] Bonjour à tous ! Je suis admin réseau de formation et je me lance tout doucement dans le php ([^^sad2]pas très simple !!) Je viens de créer un formula


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales