Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/05/2011, 21h10   #1
 
Inscription : juin 2008
Messages : 105
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 105
Points : -11
Points : -11
Par défaut Problem envoi du formulaire

salut,
Voici mon code HTML:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  <form id="contacts" method="post" action="envoyer.php">
                            <fieldset>
                                <input tabindex="1" type="text" id="nom" name="nom" value="Name" onfocus="if (this.value=='Name') this.value='';" onblur="if (this.value=='') this.value='Name';" class="text name" />
                                <br />
 
                                <input tabindex="3" type="text" id="email" name="email" value="E-mail" onfocus="if (this.value=='E-mail') this.value='';" onblur="if (this.value=='') this.value='E-mail';" class="text mail" />
                                <br />
 
                                <textarea tabindex="4" id="message" name="message" cols="30" rows="3" onfocus="if (this.value=='Message') this.value='';" onblur="if (this.value=='') this.value='Message';" class="text message">Message</textarea>
                                <br />
 
                            	<input class="button" name="Send" value="Send e-mail" type="submit" />
 
                        	</fieldset>
                        </form>
E voila le code PHP:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if(isset($_POST['nom']) && isset($_POST['email']) && isset($_POST['message']) )
{
   extract($_POST);
   if(!empty($nom) && !empty($email) && !empty($message) )
   {
	$message=str_replace("\'","'",$message);
	$destinataire="kaouach.ahmed@gmail.com";
	$sujet="Some one used the contact card on chlebta.com";
	$message="voici Le contenu de message \n
		Nom : $nom \n
		Email: $email \n
		Message: $message";
	$entete="From: $nom \n Reply-To: $email";
	$envoi=mail($destinataire,$sujet,$message,$entete);
	echo "<div class=\"error\">Have been some problems sending the email.</div>";
   }
   else
	echo "<div class=\"success\">The email has been sent successfully.</div>";
}
?>
I m'affiche que le message a été bien envoyer mais j'ai ne reçois pas le message dans ma boite mail. je vérifier mon adresse mail elle est correcte.
chlebta*tsotsi est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 18/05/2011, 21h21   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Il y a de multiples raisons pour que ca ne fonctionne pas.
Est-ce que tu as essayé d'autres emails ?
Est-ce que tu peux controler ce qui se passe sur le serveur SMTP ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 21h56   #3
 
Inscription : juin 2008
Messages : 105
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 105
Points : -11
Points : -11
oui, je suis sur que c'est un problème dû au formulaire svp passe moi un autre formulaire pour que je le teste, c pas moi qui a écrit ce code je ne suis pas assez bien en php
chlebta*tsotsi est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 18/05/2011, 22h38   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Des codes d'envoi de mail en PHP, il y en a plein le net et il y en a aussi dans les tutoriaux de developpez.net
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 07h24   #5
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 128
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 128
Points : 7 270
Points : 7 270
Bonjour,

Ton algo aussi n'est pas bon, s'il l'un des trois champs est vide, ça affichera
Citation:
echo "<div class=\"success\">The email has been sent successfully.</div>";


Ce que tu dois faire c'est que testé la valeur de $envoi, si c'est true, le mail est bien envoyé.

A+.
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/05/2011, 15h27   #6
 
Inscription : juin 2008
Messages : 105
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 105
Points : -11
Points : -11
bon j'ai modifier mon code un peu me sa fonctionne pas encore
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
if(isset($_POST['nom']) && isset($_POST['email']) && isset($_POST['message']) )
{
   extract($_POST);
   if(!empty($nom) && !empty($email) && !empty($message) )
   {
	$message=str_replace("\'","'",$message);
	$destinataire="kaouach.ahmed@gmail.com";
	$sujet="Some one used the contact card on chlebta.com";
	$message="This is the message \n
		Nom : $nom \n
		Email: $email \n
		Message: $message";
	$entete="From: $nom \n Reply-To: $email";
	$envoi=mail($destinataire,$sujet,$message,$entete);
	if($envoi) 
	  echo "<div class=\"success\">The email has been sent successfully.</div>";
	else 
	 echo "<div class=\"error\">Have been some problems sending the email.</div>";
    }
	else
     echo "<div class=\"error\">Some Information are missing.</div>";
}
?>
chlebta*tsotsi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 16h19   #7
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Essaye de remplacer tous tes "\n" par des "\r\n"
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 16h33   #8
 
Inscription : juin 2008
Messages : 105
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 105
Points : -11
Points : -11
Bon voici un autre code php que je trouve :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
include_once("config.php");
//------------------------------------------------------------------------------------------------
// RECUPERO IL VALORE DI TUTTI I DATI INVIATI DALL'UTENTE
//------------------------------------------------------------------------------------------------
$str_ind_ip = $_SERVER['REMOTE_ADDR'];
foreach ($_POST as $key=>$value) {
	$$key = $value;
}
//------------------------------------------------------------------------------------------------
//  PROCEDURA DI INVIO MAIL
//-------------------------------------
$str_oggetto			= OGGETTO_MAIL;
$str_contenuto_email 	= str_replace("{name}",$visitor,$str_contenuto_email);
$str_contenuto_email 	= str_replace("{mail}",$visitormail,$str_contenuto_email);
$str_contenuto_email 	= str_replace("{ip}", $str_ind_ip,$str_contenuto_email);
$str_contenuto_email 	= str_replace("{corpo}",$notes,$str_contenuto_email);
$str_contenuto_email 	= str_replace("{url}",$urlWebSite,$str_contenuto_email);
$headers				= $headers_mail;
 
if (!@mail($emailAdmin,$str_oggetto,$str_contenuto_email,$headers)) {
	echo "<div class=\"error\">Have been some problems sending the email.</div>";
} else {
    echo "<div class=\"success\">The email has been sent successfully.</div>";
}
Fichier config.php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
//-----------------------------------------------------------------------------------
// PARAMETRI DI CONFIGURAZIONE GENERALE
//-----------------------------------------------------------------------------------
$emailAdmin = "kaouach.ahmed@gmail.com";  // email admin where notices are sent
$urlWebSite = "www.chlebta.com"; //Website URL that is added to the bottom of emails sent from contact form
 
$headers_mail = "From: Company Name <info@your_domain.com>\nReply-to:info@your_domain.com";
define("OGGETTO_MAIL", "Contact from the site.");
 
########################################################################
/*#################		TEMPLATE MAIL		##########################*/
########################################################################
$str_contenuto_email = "
You are receiving this email because someone used the card of contacts on your website.
 
Here the personal information that we have contacted:
 
-------------------------------------------------------------
Name and Surname: {name}
E-mail: {mail}
-------------------------------------------------------------
 
This is the user's request:
 
-------------------------------------------------------------
Message: \n {corpo}
-------------------------------------------------------------
 
{url}";
?>
Ce code marche me je veux juste que je modifier le header dans le header je veux maitre From: Nom de celui qui a envoyer Reply: a l'adresse de celui qui a envoyer.
j' esseyer plein de chose me sa pas marcher. SVP comment faire
chlebta*tsotsi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 17h44   #9
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Tu veux juste spécifier les champs dans le header ?
Code :
$headers_mail = "From:{name} <{mail}>\nReply-to:{mail};
Et essaye de mieux formuler tes phrases stp, pour que ce soit plus compréhensible !
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 19h10   #10
 
Inscription : juin 2008
Messages : 105
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 105
Points : -11
Points : -11
déjà testé mais ça pas marcher
chlebta*tsotsi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h31.


 
 
 
 
Partenaires

Hébergement Web