IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

forcer l'écriture d'un champ de formulaire


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 73
    Points : 43
    Points
    43
    Par défaut forcer l'écriture d'un champ de formulaire
    Bonjour,

    J'ai créer un formulaire dans mon site Web, à l'aide de la function mail() de php.

    J'ai plusieurs champs (7 en tout).

    J'aimerais que pour les 4 premiers champs, l'internaute soit obliger de les remplir, sinon un message d'erreur apparaît.
    Et pour le cinquième champ, j'aimerais que l'internaute soit obliger de donner une adresse email valide.

    Est ce que quelqu'un pourrait m'aider, car j'ai passer quelque temps à rechercher cela sur le web , mais tjrs pas trouver !!!

    Merci

  2. #2
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    Salut

    Pour afficher une erreur en "temps réel" c'est à dire une fenêtre (alert) dès qu'il clique sur le bouton "envoyer" se fait en Javascript et non PHP.
    Par contre, si c'est une fois qu'il a validé que tu veux détecter l'erreur, alors en PHP c'est ok. Il suffit de vérifier que les champs obligatoires ne sont pas vides, du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(empty($_POST['nom']))
     echo "nom invalide" ;
    Pour la fonction mail, il faut utiliser les regexp. Mais si t'es flemmard, il existe déjà le code pour tester si une adresse est valide sur le net

    Nas'

  3. #3
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut Re: [php] forcer l'écriture d'un champ de formulaire
    Citation Envoyé par goma771
    J'ai créer un formulaire dans mon site Web, à l'aide de la function mail() de php.
    Je veux le code ! je veux le code !
    Consultant idéaliste.

  4. #4
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut Re: [php] forcer l'écriture d'un champ de formulaire
    Citation Envoyé par macbook
    Je veux le code ! je veux le code !
    Roh tu l'as compris je pense

    Nas'

  5. #5
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Avec une petite fonction perso :

    <?php
    &#160;&#160;&#160;&#160;
    function&#160;_control_form&#160;(&#160;$var&#160;=&#160;array()&#160
    &#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;
    $error&#160;=&#160;0&#160;;
    &#160;&#160;&#160;&#160;
    $message&#160;=&#160;'<table&#160;width="300"&#160;border="0"&#160;align="center"&#160;cellpadding="0"&#160;cellspacing="0">
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<tr>
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<td>&nbsp;'&#160;
    ;

    &#160;&#160;&#160;&#160;
    $message&#160;.=&#160;'Erreurs&#160;sur&#160;les&#160;champs&#160;suivants&#160;:&#160;<br&#160;/>'&#160;;

    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;foreach&#160;(&#160;
    $var&#160;as&#160;$k&#160;=>&#160;$v&#160;)
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;(&#160;empty&#160;(&#160;
    $_POST[$k]&#160&#160
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
    $error&#160;=&#160;1&#160;;
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
    $message&#160;.=&#160;'&nbsp;&nbsp;•&#160;'&#160;.&#160;$v&#160;.&#160;'<br&#160;/>'&#160;;
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}&#160;

    &#160;&#160;&#160;&#160;
    $message&#160;.=&#160;'</td>
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</tr>
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</table><br&#160;/><br&#160;/>'&#160;
    ;

    &#160;&#160;&#160;&#160;return&#160;array&#160;(&#160;
    $error&#160;,&#160;$message&#160;)&#160;;
    &#160;&#160;&#160;&#160;}
    ?>

    Phpsyntaxcolor powered by decabodi

    Que tu appelles ainsi :


    <?php
    list&#160;(&#160;$error&#160;,&#160;$message&#160;)&#160;=&#160;_control_form&#160;(&#160;array&#160;(&#160;'name'&#160;=>&#160;'nom'&#160;,&#160;'mail'&#160;=>&#160;'Email'&#160;)&#160&#160;;
    ?>

    Phpsyntaxcolor powered by decabodi
    Si $error == 0 alors c'est ok tu peux continuer, sinon si $error == 1 tu peux afficher $message.

    Hope this help
    Consultant idéaliste.

  6. #6
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Il y aurait pas du multipost dans l'air ?
    http://www.developpez.net/forums/viewtopic.php?t=460559
    Consultant idéaliste.

  7. #7
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 73
    Points : 43
    Points
    43
    Par défaut
    c'est parce que je ne savais pas dans quelle catégorie le mettre, donc voila !!!

  8. #8
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Bon sinon tu as trouvé une solution à ton goût ?
    Consultant idéaliste.

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/01/2012, 16h27
  2. [Toutes versions] Forcer la saisie d'un champ de formulaire personnalisé de RDV
    Par Jinroh77 dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 19/12/2009, 20h24
  3. [1.x] Forcer un champ de formulaire
    Par echevillard dans le forum Symfony
    Réponses: 2
    Dernier message: 25/06/2009, 10h29
  4. Probleme avec les champs du formulaire
    Par Red_devils dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 29/09/2004, 13h06
  5. Forcer la saisie en MAJ dans un Formulaire
    Par lolos dans le forum IHM
    Réponses: 4
    Dernier message: 12/08/2003, 10h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo