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 :

Vérification des données d'un formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 17
    Par défaut Vérification des données d'un formulaire
    Bonjour,

    J'essaie de créer un formulaire qui vérifie si l'utilisateur a bien entré les champs demandés mais ça ne marche pas. Mon code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <html>
    <head>
    <title>formulaire</title>
    <head>
    <body>
    <form name="formulaire" method="post" action="insert.php">
    <TABLE BORDER=0>
    <TR>
    	<TD>Nom</TD>
    	<TD>
    	<INPUT type="text" name="nom">
    	</TD>
    </TR>
    </TABLE>
    </FORM>
    </body>
    </html>
    Et la page index.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    $nom = $_POST['nom'];
    function taille_variable($nom,$taille_min=1,$taille_max=10){
    global $_POST;
    if(!isset($_POST['$nom'])){
    // valeur non définie
    return false;
    }elseif (strlen($_POST['$nom'])<'$taille_min'){
    return False;
    }elseif(strlen($_POST['$nom'])>'$taille_max'){
    return FALSE;
    }
    return True;
    }
    mysql_connect('localhost','root','') or die ("erreur de connexion");
    mysql_select_db('base') or die ("erreur de connexion base");
    mysql_query("INSERT INTO liste VALUES ('','$nom')");
    mysql_close();
    ?>
    Qu'est-ce qui cloche ? Merci.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 302
    Par défaut
    A ta place j'utiliserai du Java script et je limiterai, en html, ton input avec : . Sinon en regardant ton code peut-etre qu'écrire false avec des majuscules ne fonctionne pas. Et aussi dans ton forme tu veux que cela aille a insert.php et ta page tu l'as nomme index.php

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 25
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    }elseif (strlen($_POST['$nom'])<'$taille_min'){
     
    }elseif(strlen($_POST['$nom'])>'$taille_max'){
    Le problème vient de là. Supprimer les quote autour des variable sinon, php ne va pas regarder leurs valeurs, mais les considérés comme chaîne de caractères

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 17
    Par défaut
    J'ai enlevé les quote et mis false en minuscules mais ça ne marche toujours pas...

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 302
    Par défaut
    Tiens essaies sa pour le php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $connexion = mysql_pconnect('localhost','root','') or die ("erreur de connexion");
    mysql_select_db("base",$connexion) or die ("erreur de connexion base");
    if(isset($_POST['nom']) && !empty($_POST['nom'])){
    $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
    }
    mysql_query("INSERT INTO liste VALUES ('','$nom')");
    mysql_close();
    ?>
    Et pour le html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <INPUT type="text" name="nom" maxlength="10">
    Dis moi si cela marche. Je ne garantie rien.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 17
    Par défaut
    Non, hélas ça n'a pas l'air de marcher...

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 17
    Par défaut
    J'ai essayé d'une autre façon, en insérant du javascript dans le head de ma page html mais ça n'a pas l'air de marcher non plus. Est-ce que quelqu'un voit l'erreur ?

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <html>
    <head>
    <title>formulaire</title>
    <script type="text/javascript" language}"javascript">
    <!function verification()
    {if(document.formulaire.nom.value==""){
    document.formulaire.nom.focus();
    return false;
    }
    else
    return true;
    }
    //>
    </script>
    <head>
    <body>
    <form name="formulaire" method="post" action="insert8.php">
    <TABLE BORDER=0>
    <TR>
    	<TD>Nom</TD>
    	<TD>
    	<INPUT type="text" name="nom" maxlength="10">
    	</TD>
    </TR>
    </TABLE>
    <input type="submit" name="submit" value="inserer">
    </FORM>
    </body>
    </html>

Discussions similaires

  1. [DREAMWEAVER8] Envoyer des données d'un formulaire sur mail
    Par steeves5 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 21/02/2006, 18h15
  2. Réponses: 6
    Dernier message: 15/02/2006, 14h02
  3. Récupération des données d'un formulaire
    Par placenargac dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 04/02/2006, 15h10
  4. Avis sur la vérification des données d'une fiche
    Par AlexB59 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 28/07/2005, 20h55
  5. [ JSP ] Réaffichage des données d'un formulaire apres un ret
    Par captainpouet dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 23/04/2004, 11h55

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