Votre question

[résolu]PhP/ Formulaire et envoi par mail...

Tags :
  • Html
  • Programmation
Dernière réponse : dans Programmation
13 Juin 2007 20:31:06

Bonjour tout le monde :D  . J'ai déjà fais entièrement le script mais des erreurs doivent persister ...

Quand on repond au formulaire et qu'on clique sur envoier, Questionnaire.php s'éxecute mais on tombe sur une page blanche :(  . Votre aide me serait tres précieuse :D  .

Mon code:


fichier (x)HTML (questions.html)

Citation :
<html>
<head>
<title>Questionnaire</title>
</head>
<body>
<form method="post" action="Questionnaire.php">
<h2>Questionnaire.</h2>
Question 1 :<br>
<input type="text" name="question1" size="20">
<p>Question 2 :<br>
<input type="text" name="question2" size="20"></p>
<input type="submit" value="Envoyer" name="envoyer">   
<input type="reset" value="Recommencer" name="recommencer"> <br>
</form>
</body>
</html>


et mon fichier PhP (Questionnaire.php)

Citation :
<?php
//je verifie les variables
if (isset($question1) AND empty($question1) AND isset($question2) AND empty($question2))
{
//Securisation des variables on ne sait jamais ! :-°
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);
//Définition des variables pour le mail
$MailTo = "chez-moi@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;
//Le contenu
$MailBody = 'La première réponse du questionnaire : ',$question1,'\n';
$MailBody = 'question2 : ',$question2,'\n';
//j envois
mail($MailTo, $MailSubject, $MailBody);
//je remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>");
}
else //Sinon je lui envois un message d'erreur
{
echo("<p>Vous n\'avez pas répondu aux questions.</p>
<p>Je vous prie de recommencer s\'il vous plait.</p>");
}


Voili voilou. Maintenant, vous êtes parti pour faire la chasse aux erreurs :D  . Merci d'avance!

Autres pages sur : resolu php formulaire envoi mail

13 Juin 2007 21:24:51

$MailBody = 'La première réponse du questionnaire : ',$question1,'\n';
remplace par
$MailBody = 'La première réponse du questionnaire : '.$question1.'\n';
c'est peut-etre ça ...
13 Juin 2007 21:49:56

ca aurait été trop beau ... je tombe encore sur une page blanche après avoir fais envoyer.Merci quand même ^^
Contenus similaires
13 Juin 2007 22:08:09

bonjour,

la concatenation sous php est le . et non ,
il faut corriger les lignes ou tu as ,
\n entre ' n'est pas intérprété, il faut la mettre entre "
14 Juin 2007 09:29:49

oki mettre comme ca?: "/n"

Le code modifier :

Citation :
<?php

//On verifie les variables
if (isset($question1) AND empty($question1) AND isset($question2) AND empty($question2))
{

//Securisation des variables on ne sait jamais ! :-°
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "chez-moi@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'La première réponse du questionnaire : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>");

}
else //Sinon on lui envois un message d'erreur
{
echo("<p>Vous n\'avez pas répondu aux questions.</p>
<p>Je vous prie de recommencer s\'il vous plait.</p>");
}


Malheureusement, je tombe encore sur une page blanche ...
14 Juin 2007 12:08:13

tiens je viens de voir, tu n'as pas fermé la balise <?php
14 Juin 2007 17:24:58

Ahhhhh :pt1cable:  ... oui effectivement. Pour une erreur bête ca en est une! Malheureusement, mon script (même raccourci au maximum) ne marche pas. Je vous donne le script apres quelques modifications.
Connection.php
Citation :
<?php
}
//Securisation des variables on ne sait jamais
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "chez-moi@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'La première réponse du questionnaire : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>");
}
?>


Sinon, je tenais à vous remercier pour toute l'attention que vous pouvez me porter :)  .
14 Juin 2007 21:19:24

kaotic@IDN a dit :
Ahhhhh :pt1cable:  ... oui effectivement. Pour une erreur bête ca en est une! Malheureusement, mon script (même raccourci au maximum) ne marche pas. Je vous donne le script apres quelques modifications.
Connection.php
Citation :
<?php
}
//Securisation des variables on ne sait jamais
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "dofus.lesite@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'La première réponse du questionnaire : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>");
}
?>


Sinon, je tenais à vous remercier pour toute l'attention que vous pouvez me porter :)  .

ah oui mais si tu le raccourcis n'importe comment, ca va pas le faire...

14 Juin 2007 21:48:15

En tous cas, le fait est que je tombe toujours sur une page blanche et ça me stresse... j'ai beau essayé... pas moyens. Merci à celui qui fera que mon code affiche ne serrait-ce qu'une lettre ^^ .
14 Juin 2007 21:48:36

il ne faut pas que tu fasse un isset($question1) car $question1 n'existe pas mais il faut faire un isset($_POST['question']).
14 Juin 2007 22:04:45

Eh non ... toujours pas :na:  . J'en ai marre ! De toute façon je n'abandonnerais pas! Mon dieu, faîtes que le prochain conseil soit le bon :non:  . Comme d'habitude mon code perfectionné:

Citation :
<?php
//On verifie les variables
if (isset($_POST['question1']) AND empty($_POST['question1']) AND isset($_POST['question2']) AND empty($_POST['question2']))
}
//Securisation des variables on ne sait jamais
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "atmyhome@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'La première réponse du questionnaire : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>");
}
?>
14 Juin 2007 22:12:47

Essaie ça :

J'ai remplacé les AND par &&

Citation :
<?php
//On verifie les variables
if ((isset($_POST['question1']) && (empty($_POST['question1'])) && (isset($_POST['question2'])) && (empty($_POST['question2'])))
{
//Securisation des variables on ne sait jamais
$question1 = htmlentities($_POST['question1']);
$question2 = htmlentities($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "atmyhome@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'La première réponse du questionnaire : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>" );
}
?>
14 Juin 2007 22:30:11

Suis-je maudit? Dès que je clique sur envoyer, je tombe encore sur une page blanche ... J'attend avec impatience vos prochaines suggestions ^^.
14 Juin 2007 22:33:35

Est-ce que ta page est sur le net ?

Essaie de mettre un echo après le dernier }. Dis moi si le message s'écrit.
14 Juin 2007 22:40:57

oui et hébérgée par Xdir.
14 Juin 2007 22:41:28

tu peux me donner l'adresse ? que j'aille voir.
14 Juin 2007 22:51:27

devinez quoi? je commence à avoir du résultat. Je post le tout demain car là je vais me coucher. Merci à tous, je vous aime!!!!!!

Xdir admet PhP et la fonction mail() ... je ne suis pas si bête non plus ^^.
14 Juin 2007 23:50:18

surement mais par contre en php ca laisse à désirer :D 
  1. <?php
  2. //On verifie les variables
  3. if (isset($_POST['question1']) AND empty($_POST['question1']) AND isset($_POST['question2']) AND empty($_POST['question2']))
  4. }


un if suivi d'une accollade fermante....
15 Juin 2007 00:38:37

lol !

ta raison.. tu a oublié de rajouter une accolade fermante

  1. <?php
  2. //On verifie les variables
  3. if ((isset($_POST['question1'])) && (empty($_POST['question1'])) && (isset($_POST['question2'])) && (empty($_POST['question2'])))
  4. {
  5. //Securisation des variables on ne sait jamais
  6. $question1 = htmlentities($_POST['question1']);
  7. $question2 = htmlentities($_POST['question2']);
  8.  
  9. //Définition des variables pour le mail
  10. $MailTo = "atmyhome@gmail.com" ;
  11. $MailSubject = "réponse au questionnaire" ;
  12.  
  13. //Le contenu
  14. $MailBody = 'La première réponse du questionnaire : '.$question1."\n";
  15. $MailBody = 'question2 : '.$question2."\n";
  16.  
  17. //On envoit
  18. mail($MailTo, $MailSubject, $MailBody);
  19.  
  20. //on remercie
  21. echo("<p>Merci d\'avoir répondu à nos questions.<br /></p>" );
  22. }
  23. ?>
15 Juin 2007 09:23:35

Oui j'ai vu hier soir et c'est à partir de là que mon code à COMMENCER à fonctionner. Malheureusement, il reste encore un léger problème ... Je ne reçois que la question2 du questionnaire.

Voici mon code:

Citation :
<?php
//On verifie les variables
if (!empty($_POST['question1']) AND !empty($_POST['question2']))
{
//Securisation des variables on ne sait jamais
$question1 = htmlentities ($_POST['question1']);
$question2 = htmlentities ($_POST['question2']);

//Définition des variables pour le mail
$MailTo = "chez-moi@gmail.com" ;
$MailSubject = "réponse au questionnaire" ;

//Le contenu
$MailBody = 'question1 : '.$question1."\n";
$MailBody = 'question2 : '.$question2."\n";

//On envoit
mail($MailTo, $MailSubject, $MailBody);

//on remercie
echo("<p>Merci d'avoir répondu à mes questions.<br /></p>");
}
else //Sinon on lui envois un message d'erreur
{
echo("<p>Vous n'avez pas répondu aux questions.</p>
<p>Je vous prie de recommencer s'il vous plait.</p>");
}
?>
15 Juin 2007 19:52:45

Je up ... Je m'excuse auprès des autres demandeurs d'aide. Je les aiderais dans la limite du possible quand mon problème serra résolu.
15 Juin 2007 20:57:38

il faut concatener les reponse en php c'est le .

$a = "1" . " 2";
a sera = "1 2"
15 Juin 2007 20:59:54

Je ne te suis pas trop peu tu me montrer un exemple plus concret? merci d'avance
15 Juin 2007 21:10:48

  1. //Le contenu
  2. $MailBody = 'question1 : '.$question1."\n";
  3. $MailBody .= 'question2 : '.$question2."\n";

15 Juin 2007 21:34:21

Ca marche, merci beaucoup. Comme votre aide m'a été d'une grande utilité, je vais vous aider à aider les débutants, dans la limite du possible sur tout le forum.
15 Juin 2007 21:41:26

Yeah cool ! un collègue... bon je sais j'aide pas beaucoup ...
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS