*
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
07 Février 2012 à 05:39:11

Connexion avec identifiant, mot de passe et durée de la session



 

Formulaire PHP et envoi par email


« sujet précédent | | sujet suivant »
Pages: 1 [2] Imprimer
Auteur Fil de discussion: Formulaire PHP et envoi par email  (Lu 7394 fois)
eatget
Nouveau membre
*

Points gagnés: -1
Messages: 10


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #15 le: 12 Mai 2007 à 12:29:58 »

Cher Touta et Medhi,

Je trouve que vous montez bien vite, car je ne pense pas avoir fait une démonstration ni d'incorrection, ni de manque de courtoisie.
Je rectifie donc mon propos, ma livraison concerne juste mon assoc de bénévoles et il n'y a rien de commercial dans tout cela. Donc je vous prie de m'excuser si je me suis mal exprimé, tel n'était pas mon intention. Je voulais simplement vous dire que depuis le 4 mai et après 3 messages d'appel au secours, je suis dans l'impasse la plus totale et que je n'ai rien trouvé sur le forum qui puisse m'aider.
 
Maintenant si vous pouvez me venir en aide, se sera avec la plus grande attention que je vous écouterai.
Encore désolé pour ce quiproquo

Bien cordialement

eatget
Journalisée
Damien
Rédacteur Admin
Intarissable
*****

Points gagnés: 5
Messages: 2830



Voir le profil WWW
Re : Formulaire PHP et envoi par email
« Répondre #16 le: 12 Mai 2007 à 21:46:46 »

Bonsoir,

Je ne rajouterai rien, je crois que Touta a tout dit.
En général c'est moi qui répond sur ce sujet mais j'étais en congés bien mérités cette semaine, alors inutile de s'exciter, nous faisons ce que nous pouvons bénévolement.

En plus c'est dommage car pour le problème du serveur SMTP, c'est vrai qu'il est courant et que j'ai déjà répondu à cette question sur le forum. Peut-être ne l'avez-vous pas vu. Rendez vous ici et regardez au niveau de ma réponse à "A boilatas" :
http://www.forum-aide.com/tutoriaux-informatique/faire-un-formulaire-html-css-php-1-sur-3-t613.0.html;msg6671#msg6671

Bon courage
Journalisée

Cordialement,
Damien

Tutoriels informatique
eatget
Nouveau membre
*

Points gagnés: -1
Messages: 10


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #17 le: 13 Mai 2007 à 08:36:24 »

Bonjour Damien
et merci pour cette réponse, je vais regarder aujourd'hui et essayer de configurer PHP.INI.
Je vous tiens au courant.
Journalisée
gtcv
Nouveau membre
*

Points gagnés: 0
Messages: 1


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #18 le: 24 Février 2010 à 18:19:00 »

Bonjour, merci pour vos formulaires,

J'ai un petit soucis avec l'integration des variables dans le $mail_corps
à chaque essais il m'affiche
"Notice: Undefined variable: civilite in C:\wamp\www\traitement.php on line 50

Notice: Undefined variable: nom in C:\wamp\www\traitement.php on line 50

Notice: Undefined variable: comments in C:\wamp\www\traitement.php on line 52
Votre demande a bien été prise en compte."
mais il m'envois le mail.

j'ai essayé de chercher seul mais comme vous vous en doutez je n'ai pas trouver

voici: mon code formulaire:
Code:
<form method="post" action="traitement.php">

<p class="titre">Coordonnées</p>

<fieldset id="coordonnees">

<p id="civilite"><label>Civilité : </label>
    <input type="radio" name="civilite" value="M." />M.
    <input type="radio" name="civilite" value="Mlle" />Mlle
    <input type="radio" name="civilite" value="Mme" />Mme
  </p>
  
  <label>Nom : </label>
    <input type="text" name="nom" size="30" /><br />
 <label>email : </label>
    <input type="text" name="email" size="30" /><br />
  <label>Adresse : </label>
    <input type="text" name="adresse" size="30" /><br />
  <label>Code postal : </label>
    <input type="text" name="codepostal" size="30" /><br />
  <label>Ville : </label>
    <input type="text" name="ville" size="30" /><br />

 <p id="Merci_de"><label>Merci de : </label>
<input type="checkbox" name="Merci_de[]" value="m'envoyer une documentation" />m'envoyer une documentation
<input type="checkbox" name="Merci_de[]" value="me rappeler" />me rappeler<br />
</p>
</fieldset> />

<p class="titre">Message</p>

<fieldset id="message">
  <textarea name="comments" rows="5" cols="40"></textarea>
</fieldset>

<p id="buttons">
  <input type="submit" value="Envoyer" />
  <input type="reset" value="Recommencer" />
</p>

</form>

et voici le traitements:

<?php
$msg_erreur 
"Erreur. Les champs suivants doivent être obligatoirement remplis :<br/><br/>";
$msg_ok "Votre demande a bien été prise en compte.";
$message $msg_erreur;
define('MAIL_DESTINATAIRE','gtcv@caramail.com'); // remplacer par votre email
define('MAIL_SUJET','Demande de renseignements');



// vérification des champs 
if (empty($_POST['civilite'])) 
$message .= "civilite<br/>";
if (empty(
$_POST['nom'])) 
$message .= "Votre nom<br/>";
if (empty(
$_POST['adresse'])) 
$message .= "Votre adresse<br/>";
if (empty(
$_POST['codepostal'])) 
$message .= "Votre code postal<br/>";
if (empty(
$_POST['ville'])) 
$message .= "Votre ville<br/>";
if (empty(
$_POST['comments'])) 
$message .= "Votre message<br/>";
// si un champ est vide, on affiche le message d'erreur 
if (strlen($message) > strlen($msg_erreur)) {

  echo 
$message;

// sinon c'est ok 
} else {

$Merci_de $_POST['Merci_de'];
$sqlMerci_de '';
for (
$i=0$i<count($Merci_de); $i++)
{
$sqlMerci_de .= $Merci_de[$i];
$sqlMerci_de .= ', ';
}

//Préparation de l'entête du mail:
$mail_entete "MIME-Version: 1.0\r\n";
$mail_entete .= "From: {$_POST['nom']} "
             
."<{$_POST['email']}>\r\n";
$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
$mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
$mail_entete .= 'X-Mailer:PHP/' phpversion()."\r\n";

// préparation du corps du mail
//$mail_corps = "Message pour : $pour\n";
$mail_corps "Message de : $civilite $nom\n";
$mail_corps .= "Merci de : $sqlMerci_de\n\n\n";
$mail_corps .= $comments;

// envoi du mail
if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete)) {

  
//Le mail est bien expédié
  
echo $msg_ok;
} else {

  
//Le mail n'a pas été expédié
  
echo 'Une erreur est survenue lors de l\'envoi du formulaire par email';
}

}
?>
Merci pour votre aide.

« Dernière édition: 02 Janvier 2012 à 18:17:39 par Touta » Journalisée
PurpleMoon
Nouveau membre
*

Points gagnés: 0
Messages: 1


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #19 le: 17 Mai 2010 à 15:40:33 »

Salut à vous !

Débutant, j'utilise vos tutos pour m'initier à php.
je viens d'essayer l'envoi d'un formulaire par mail mais mon seul résultat est :
Parse error: parse error in C:\wamp\www\..... X.php on line 48
ma ligne 48 étant :
if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete))
J'utilise Wamp sur windows xp pro, aussi ai je modifié comme il se doit le php.ini pour indiquer mon SMTP et mon adresse mail.
Mais voilà rien n'y fait.

Si vous aviez quelques pistes ...
En vous remerciant
Journalisée
nisetim
Nouveau membre
*

Points gagnés: 0
Messages: 1


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #20 le: 08 Novembre 2011 à 17:06:05 »

Bonjour, j'ai bien suivi vos tuto (merci et bravo, au passage !)  et je l'ai mis en application. Le formulaire pas de probleme, mais le traitement.php semble ne pas marcher. Mon hebergeur est free, il y a peu etre une manip pour integrer du php ? Cordialement
Journalisée
sirus91
Nouveau membre
*

Points gagnés: 0
Messages: 4


Voir le profil
Re re: Formulaire PHP et envoi par email ET ENVOI DANS LA BASE MYSQL EN MEME TEM
« Répondre #21 le: 02 Janvier 2012 à 11:41:24 »

Le tuto qui s'appelle  :
"Formulaire envoi e -mail dans sa boite au lettre et en meme temps + envoi des données dans la Base mysql
http://www.6ma.fr/tuto/formulaire+php+envoi+par+email+mysql-256

En ce qui me concerne Ne Marche Que pour la Partie e mail a savoir que dans la base Mysql je ne reçois rien ?
Et dans la partie e mail je reçois le formualire rempli Alorsors qu'on doit recevoir les eux en même temps !
-Pourtant avant la partie envoi dans la base seule marche de maniere ordonnée dans la base mysql
-Pourtant  avant la partie e- mail marche aussi de façon séparée  (avec smtp en local sur wamp avec mise en place et en configuration de sendmail etc...)
DOMMAGE D ETRE SI PROCHE DE BUT ET DE NE PAS ARRIVER  Sad
Si une personen pouvez m'aider SVP merci mille fois ...

Adresse E-mail Modérée
--------------------------------------------------------------------------------------------------------------
VOIC VOTRE CODE ENVOI EMIL ET ENVOI DANS MYSQL EN MEME TEMPS :

Code:
<php?
// Parametres mysql à remplacer par les vôtres

<?php
define
('DB_SERVER''localhost'); // serveur mysql
define('DB_SERVER_USERNAME''root'); // nom d'utilisateur
define('DB_SERVER_PASSWORD''xxxxxxx); // mot de passe
define('
DB_DATABASE', 'base_formail'); // nom de la base

// parametres email à remplacer par les vôtes
define('
MAIL_DESTINATAIRE','xxxxx.yyyyy@xxxxxx.fr'); // remplacer par votre email
define('
MAIL_SUJET','Message du formulaire de example.com');

$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis :

";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;

// Connexion au serveur mysql
$connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,
DB_SERVER_PASSWORD)
or die('
Impossible de se connecter ' . mysql_error());
// sélection de la base de données
mysql_select_db(DB_DATABASE, $connect);

// vérification des champs
if (empty($_POST['
civilite']))
$message .= "Votre civilité
";
if (empty($_POST['
nom']))
$message .= "Votre nom
";
if (empty($_POST['
adresse']))
$message .= "Votre adresse
";
if (empty($_POST['
codepostal']))
$message .= "Votre code postal
";
if (empty($_POST['
ville']))
$message .= "Votre ville
";
if (empty($_POST['
comments']))
$message .= "Votre message
";

// si un champ est vide, on affiche le message d'
erreur
if (strlen($message) > strlen($msg_erreur)) {

echo 
$message;

// sinon c'est ok
} else {

// on enleve les slashes et espace inutiles
foreach($_POST as $index => $valeur) {
  $
$index stripslashes(trim($valeur));
//}

// on liste les centre d'interets en ligne
$interets $_POST['interets'];
$sqlinterets '';
for (
$i=0$i<count($interets); $i++)
{
$sqlinterets .= $interets[$i];
$sqlinterets .= ', ';
}
}

//Préparation de l'entête du mail
$mail_entete "MIME-Version: 1.0\r\n";
$mail_entete .= "From: {$_POST['nom']} "
."<{$_POST['email']}>\r\n";
$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
$mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
$mail_entete .= 'X-Mailer:PHP/' phpversion()."\r\n";

// préparation du corps du mail
$mail_corps "Message de : $civilite $nom\n";
$mail_corps .= "Adresse : $adresse$codepostal $ville$pays\n";
$mail_corps .= "Ses centres d'intérêts : $sqlinterets\n\n\n";
$mail_corps .= $comments;

// envoi du mail
$res_mail mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete);


foreach(
$_POST as $index => $valeur) {
  
// utilisez addslashes() au lieu de mysql_real_escape_string()
  // si vous n'etes pas sur PHP5 ou si la fonction pose probleme
  
$$index mysql_real_escape_string(trim($valeur));
}

// insere les donnees dans mysql
$sql "INSERT INTO formulaire VALUES ('', '$civilite', '$nom', '$adresse', '$codepostal', '$ville', '$pays', '$sqlinterets', '$comments', now())";
$res_sql mysql_query($sql);
//------------------------------------

// J'ai rajouté ceci MAIS CELA NE CHANGE RIEN ???

if ($res) {

    echo 
$msg_ok;

  } else {

    echo 
mysql_error();

  }

//-----------------------------------
// si le mail a ete envoye par mail et mysql
if ($res_mail && $res_sql) {
echo 
$msg_ok;
// si mysql a retourné une erreur
} else if (!$res_sql) {
echo 
mysql_error();
// si le mail n'a pas été envoyé
} else if (!$res_mail) {echo 'Erreur. Le formulaire ne nous a pas été correctement envoyé par email.';}}
?>
« Dernière édition: 02 Janvier 2012 à 18:00:26 par Touta » Journalisée
Touta
Rédacteur Admin
Intarissable
*****

Points gagnés: 20
Messages: 3251


Pas de réponses par MP et par Mail aux questions.


Voir le profil WWW
Re : Formulaire PHP et envoi par email
« Répondre #22 le: 02 Janvier 2012 à 18:05:41 »

Message de modération :

sirus91 l'adresse E-mail contenue dans votre message a été modérée pour éviter toutes tentative d’hameçonnage à votre encontre. Toutes les réponses doivent apparaitre sur le forum.

Merci d'utiliser les balises code # de l'éditeur de message lorsque vous placez du code dans vos posts ceci afin d'améliorer la lisibilité de vos messages.
« Dernière édition: 02 Janvier 2012 à 18:10:20 par Touta » Journalisée

Touta
Je n'ai rien à dire mais je le dis quand même...

La Chanson de Touta 
 
Webmaster de BMKDO Actu
Damien
Rédacteur Admin
Intarissable
*****

Points gagnés: 5
Messages: 2830



Voir le profil WWW
Re : Formulaire PHP et envoi par email
« Répondre #23 le: 03 Janvier 2012 à 13:44:05 »

Bonjour,

Il doit y avoir une erreur SQL, il faut que vous puissiez l'afficher pour savoir d'où ça vient.

Remplacez :
Code:
// J'ai rajouté ceci MAIS CELA NE CHANGE RIEN ???

if ($res) {

    echo $msg_ok;

  } else {

    echo mysql_error();

  }

Par :

Code:
// J'ai rajouté ceci MAIS CELA NE CHANGE RIEN ???

if ($res_sql) {

    echo $msg_ok;

  } else {

    echo mysql_error();

  }

Journalisée

Cordialement,
Damien

Tutoriels informatique
sirus91
Nouveau membre
*

Points gagnés: 0
Messages: 4


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #24 le: 03 Janvier 2012 à 15:27:10 »

Bonjour merci dem'avoir répondu assez vite,
Voici l'erreur qu'on a pu corriger avec un collègue juste avant que vousme rpondiez ? :
Dans la partie // Insérer les données dans mysq (votre scripte ci - dessus):
Il fallait remplacer 'formulaire' par 'formail' et ....'echo$sql'; ...à la fin cela marche voir le code ci dessous extrait:
Ainsi les messages arrivent en meme temps dans l'email et dans la base ; base_formail précisément
Je vais aussi essayer ce que vous dites ici et je vosu dirai apres SVP
Merci infiniment de votre précieux réponse.

Fichier ; traitment.php dans 'base_formail'  m: en local wamp serveur Mysql (vers ligne 95)
<----------------------------------------------------------->
$sql = "INSERT INTO formail VALUES ('', '$civilite', '$nom', '$adresse',
'$codepostal', '$ville', '$pays', '$sqlinterets', '$comments', now())";
echo $sql;
<--------------------------------------------------------->
PS : Si non il y'aune autre petit pb dans ce scipte c'est que le message de confirmation d'envoi d' email et de formulaire rempli ne s'affiche pas, il s'affiche juste une page blanche, une fois qu'on a cliquer sur envoyer  mais bon ce n'est pas très grave cela.
cdt à vous
« Dernière édition: 03 Janvier 2012 à 15:40:22 par sirus91 » Journalisée
sha002
Nouveau membre
*

Points gagnés: 0
Messages: 2


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #25 le: 23 Janvier 2012 à 16:00:16 »

Bonjour,

Un grand merci pour ce tuto Wink
Je rencontre cependant un petit problème.

J'ai testé mon formulaire depuis plusieurs appareils (avec différents navigateurs) et sur certain l'envoi de l'email fonctionne et d'autre pas mais dans tous les cas j'arrive sur la page "votre demande à bien été envoyée".

Depuis mon Iphone avec Safari, ça fonctionne, depuis celui de ma compagne pas.
Depuis mon PC ça fonctionne avec IE9 et Firefox mais depuis deux autres de mes pc (IE8) ça ne va pas.
Un des PC ou ça ne fonctionne pas avec IE8, ça fonctionne avec Chrome
J'ai demandé à un pote d'essayer depuis son PC (IE8) et là ça a fonctionné.
etc ...

Je suis plus que novice en PHP et là je ne comprend vraiment pas ou peut être le problème :-/

D'avance merci pour votre aide.

Bien à vous,

sha002
Journalisée
sha002
Nouveau membre
*

Points gagnés: 0
Messages: 2


Voir le profil
Re : Formulaire PHP et envoi par email
« Répondre #26 le: 23 Janvier 2012 à 16:15:48 »

Pensant avoir fait une erreur de code j'ai refait des tests en repartant de votre code (celui du tuto) et j'ai exactement le même problème sur certain pc la demande est "traitée" mais le mail n'arrive jamais.  Sad
Journalisée
Pages: 1 [2] Imprimer 
« sujet précédent | | sujet suivant »
Aller à:  

Powered by SMF 1.1.12 | SMF © 2006, Simple Machines LLC

Page générée en 0.176 secondes avec 18 requêtes.