Aide - Recherche - Membres - Calendrier
Version complète : Recommander.... [PHP]
Forum Webmaster - Ton Webmaster > Conception de sites > Programmation > php
Gaylord.P
Bonjour, j'ai fait un script pour recommander un site Internet, et il y à un petit problème (la je n'ai pas encore mis la fonction mail), regardez plutot :



QUOTE
<?PHP

if($Recommander)

{



if ($Nom_1 == "")

{

print ("Le champ "Le prénom de votre ami" est vide, merci de le remplir.n");

}



if ($Nom_2 == "")

{

print ("Le champ "Votre prénom" est vide, merci de le remplir.");

}



if ($Mail == "")

{

print ("Le champ "L'adresse e-mail de votre ami" est vide, merci de le remplir.");

}



if ($Message == "")

{

print ("Le champ "Votre message perso" est vide, merci de le remplir.");

exit;

}



else

{

print ("Votre message a bien était envoyé, merci de nous avoir recommander.");

exit;

}

}




else

{

print("



<FORM ACTION='http://www.UltimeDebat.com/UltimeDebat/saluer.php' METHOD='POST'>

&nbsp;- Le prénom de votre ami :<br>&nbsp;

<input type='text' name='Nom_1' VALUE='' size='25'><br>

&nbsp;- Votre prénom :<br>&nbsp;

<input type='text' name='Nom_2' VALUE='' size='25'><br>

&nbsp;- L'adresse e-mail de vote ami :<br>&nbsp;

<input type='text' name='Mail' VALUE='' size='25'><br>

&nbsp;- Votre message perso :<br> &nbsp;

<textarea rows='5' cols='25' name='Message'>Mon message perso...</textarea></p>

<p align='center'>

<INPUT TYPE='submit' VALUE='Cliquez-ici' name='Recommander'>

</p>

</FORM>





");

}



?>






Le problème, c'est que même lorsque un des chmaps est vide, le message : "Votre message a bien était envoyé, merci de nous avoir recommander" s'affiche quand même, comment y remédier... ?

Merci d'avance wink.gif
jp451
pour le exit tu met : exit(); :wink.gif
Gaylord.P
lol heu non...ca ne vient pas de ça, "exit;" et "exit();" ca revient au même :wink.gif
Oow
C'est normal DJsmileyus ...



En ecrivant

...



CODE
if ($Message == "")


{


print ("Le champ "Votre message perso" est vide, merci de le remplir.");


exit;


}





else


{


print ("Votre message a bien était envoyé, merci de nous avoir recommander.");


exit;


}




ça reviens à dire que tout ce qu'il faut pour envoyer le mail c'est que le champ $message soit saisie, en clair il s'en fou de $nom_1, $nom_2 et $mail ...



La solution une variable d'etat .. ou plus simple des if imbriqués : essayes ça :



CODE
<?PHP


if($Recommander)


{





if ($Nom_1 == "")


{


print ("Le champ "Le prénom de votre ami" est vide, merci de le remplir.n");


}


else


{


  if ($Nom_2 == "")


  {


     print ("Le champ "Votre prénom" est vide, merci de le remplir.");


  }


  else


  {


      if ($Mail == "")


     {


       print ("Le champ "L'adresse e-mail de votre ami" est vide, merci de le remplir.");


     }


     else


     {


        if ($Message == "")


       {


            print ("Le champ "Votre message perso" est vide, merci de le remplir.");


       }


       else


       {


           print ("Votre message a bien était envoyé, merci de nous avoir recommander.");


           exit;


       }//fin if $message==""


     }//fin if $mail==""


   }//fin if $nom_2==""


 }//fin if $nom_1==""


}//if($recommander)





else


{


print("





<FORM ACTION='http://www.UltimeDebat.com/UltimeDebat/saluer.php' METHOD='POST'>


&nbsp;- Le prénom de votre ami :<br>&nbsp;


<input type='text' name='Nom_1' VALUE='' size='25'><br>


&nbsp;- Votre prénom :<br>&nbsp;


<input type='text' name='Nom_2' VALUE='' size='25'><br>


&nbsp;- L'adresse e-mail de vote ami :<br>&nbsp;


<input type='text' name='Mail' VALUE='' size='25'><br>


&nbsp;- Votre message perso :<br> &nbsp;


<textarea rows='5' cols='25' name='Message'>Mon message perso...</textarea></p>


<p align='center'>


<INPUT TYPE='submit' VALUE='Cliquez-ici' name='Recommander'>


</p>


</FORM>








");


}





?>




Je crois que je me suis embrouillez un peu,



c'est pour ça que je prefere utilisé une variable que tu initialise à TRUE au debut de ton script et qui se met à FALSE dès que l'un des champs n'est pas rempli

Apres il te suffit de tester la valeur de cette variable avant l'envoi :

- Si elle est restée à TRUE : c'est qu'il n'y a pas eu de probleme

- Si elle est à FALSE : c'est qu'il y a un champ qui n'a pas été rempli



Voilou, voilà :wink.gif



@+
Oow
je viens de tester ce que je viens de te dire et apparement ça marche ... enfin je crois



Mais bon l'autre solution reste quand meme la meilleur, parce que là tu n'as que 3 ou 4 champs mais le jour ou tu te retrouvera avec un formulaire de 20 champs ... :toufou: :biggrin.gif
Gaylord.P
oK, merci beaucoup, ca fonctionne.
C\'est une version "bas débit" de notre forum. Pour voir la version complète avec plus d\'information, la mise en page et les images, veuillez cliquez ici.
Invision Power Board © 2001-2012 Invision Power Services, Inc.