Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2745 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP]Aide pour formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP]Aide pour formulaire

n°1351735
analfabete
Posté le 22-04-2006 à 11:20:10  profilanswer
 

Bonjour à tous je suis actuellement que sur free qui n'accepte pas la fonction mail donc j'aimerai savoir si le script que j'ai modifier est correct, en voici le code:

Code :
  1. <?php
  2. function formulaire($Nom="",$Email="",$Sujet="",$Texte="" ) {
  3. ?>
  4.      <form action="<?php echo $PHP_SELF ?>" method="post"  enctype=="text/plain">
  5. <p><label>Votre nom</label>
  6.     <input type="text" class="textfield" name="Nom" size="18" value="<?php echo trim(htmlentities($Nom)) ?>" /></p>
  7. <p> <label> E-mail</label>
  8.    <input class="textfield" type="text" name="Email" size="18" value="<?php echo trim(htmlentities($Email)) ?>"/></p>
  9. <p><label>Sujet</label>
  10. <select class="textfield" name="Sujet" value="<?php echo trim(htmlentities($Sujet)) ?>">
  11.     <option>Question</option>
  12.     <option>Suggestion</option>
  13.     <option>Probl&egrave;me</option>
  14.     <option>Autre</option>
  15. </select></p>
  16.   <p><label>Texte</label>
  17.    <textarea name="Texte" cols="30" rows="5" value="<?php echo trim(htmlentities($Texte)) ?>"></textarea></p>
  18.  
  19.   <p style="text-align:center; padding-top:6px;">
  20.   <input name="envoyer" src="img/bouton_envoyer.png" type="image" />
  21.   </p>
  22.  
  23.   <?
  24. }
  25. if(!isset($Nom)) {
  26. formulaire();
  27. }
  28. else {
  29. $vNom=trim(htmlentities($_POST["Nom"]));
  30. $vEmail=trim(htmlentities($_POST["Email"]));
  31. $vSujet=trim($_POST["Sujet"]);
  32. $vTexte=trim(htmlentities($_POST["Texte"]));
  33. $destinataire='mon email';
  34. $titre="Modèle de page Contact";
  35. $message.="Navigateur : $HTTP_USER_AGENT\n";
  36. $message.="Nom : $vNom\n";
  37. $message.="Profession : $vEmail\n";
  38. $message.="E-mail : $vSujet\n";
  39. $message.="Message : $vTexte\n";
  40. if (empty($vNom) || empty($Texte) || empty($Email)) {
  41.  echo "<p>Champ invalide:</p>";
  42.  $erreur=1;
  43. }
  44. if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-_.]?[0-9a-z])*\\.[a-z]{2,4}$",$vEmail) && ($erreur<>1)){
  45.  echo "<p>E-mail invalide:</p>";
  46.  $erreur=1;
  47. }
  48. if ($erreur==1) {
  49.  formulaire($Nom,$Email,$Sujet,$Texte);
  50. }
  51. else {
  52.  mail($destinataire,$titre,$message,"From: $vEmail" ) ;
  53.  echo "<p>Votre e-mail à bien été envoyer </p>" ;
  54. }
  55. }
  56. ?>
  57. </form>


mood
Publicité
Posté le 22-04-2006 à 11:20:10  profilanswer
 

n°1351738
newneo2001
Posté le 22-04-2006 à 11:23:59  profilanswer
 

euh je vois pas ce que tu as modifié pour que ca marche chez free ?


---------------
N'oubliez pas de mettre [RESOLU] dans le titre quand c'est fini - Pour poster vos sources : http://paste.clicksources.com/
n°1351744
analfabete
Posté le 22-04-2006 à 11:29:23  profilanswer
 

Non en faite je demande si mon code est correcte car je vais bientot avoir un hébergement payant  
C'est vrai que je me suis mal exprimé ...

n°1351749
newneo2001
Posté le 22-04-2006 à 11:44:56  profilanswer
 

alors visiblement oui ton code semble correcte. Maintenant tu peux largement l'améliorer.
 
Au lieu de créer une fonction formulaire cré plutot ta page dans l'autre sens cad selon le schéma suivant
 
 

Code :
  1. if (isset $_POST['nom']){ //si le formulaire est renvoyé
  2. // tu testes les erreurs possible
  3. if (champ vides){ // test les champs vides
  4.   $erreur = '<p>champ vide</p>';
  5. }
  6. if (valid email) // test si l'email est valide
  7. }
  8. if ($erreur){ //le formulaire contient des erreurs
  9. echo $erreur;
  10. }else{
  11. //affiche le formulaire
  12. }


 
dans le schema c'est ca. Moi en cas d'erreur je l'affiche au dessus du formulaire et je renote le formulaire déjà rempli et je ne l'affiche pas que si le mail est envoyé.
 
J'espère que c'est un peu plus clair pr toi.
 
++


---------------
N'oubliez pas de mettre [RESOLU] dans le titre quand c'est fini - Pour poster vos sources : http://paste.clicksources.com/
n°1351767
analfabete
Posté le 22-04-2006 à 12:29:41  profilanswer
 

Je ne compren pas un truc meme si la fonction mail ne marche pas je devrai quand meme voir les erreurs si je me trompe d'email par exemple...
Deplus comment puis-je placer les echo "<p>Email invalide</p>" a droite du champ email ?

n°1351925
analfabete
Posté le 22-04-2006 à 18:46:00  profilanswer
 
n°1352095
Zythan
Posté le 23-04-2006 à 07:38:09  profilanswer
 


Bonjour,
 
Pourquoi n'emploie-tu pas le script fourni par Free ?  
 
A+
 
Zythan

n°1352194
gooopil
pfiew
Posté le 23-04-2006 à 14:26:58  profilanswer
 

analfabete a écrit :

Non en faite je demande si mon code est correcte car je vais bientot avoir un hébergement payant
C'est vrai que je me suis mal exprimé ...


 
...
 
 

Zythan a écrit :

Bonjour,
 
Pourquoi n'emploie-tu pas le script fourni par Free ?  
 
A+
 
Zythan


 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP]Aide pour formulaire

 

Sujets relatifs
[PHP BB] Failles de sécurité ...Problème d'affichage avec une listbox - Besoin d'aide
Chtite Question sur Apache -- PHPPHP pour les meta
besoin d'aide pour installer un sondage ![VBS] Aide sur expression régulière
[PHP] Problème de sécuritéAjout dynamique dans base sql via PHP
débutant en PHP a besoin d'aide !!Problème avec un formulaire ! ! ! ![AIDE] [PHP] Besoin de quelqu'un pr un "formulaire"
Plus de sujets relatifs à : [PHP]Aide pour formulaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR