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

Requêtes MySQL Discussion :

Problème de vérification de champs dans un formulaire !


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Problème de vérification de champs dans un formulaire !
    Bonjour,

    Je me suis mis a la programmation MySql depuis peu, et je commence à maitriser doucement les rouages et la logique MySql. Pour les besoins de mon sites, j'ai donc crée un formulaire contenant des champs assez nombreux.

    Une fois validé, le informations sont envoyé sur une seconde page où un script php vérifie les champs s'ils sont remplis ou non. Hors le script que j'ai écrit (inspiré d'un script issu de Php et MySql pour les Nuls) vérifie très bien tous les champs, mais je veux écarté certains qui ne sont pas indispensable. Bref il me vérifie tout et me donne les champs vides mais je ne veux en cibler que quelques uns.

    Donc voila, après quelques heures a essayer de comprendre l'erreur, je soumet le code ici en espérant qu'une personne comprenne où moi je bloque.

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans titre</title>
    <link rel="stylesheet" type="text/css" href="swa_texte.css">
    <link rel="stylesheet" type="text/css" href="swa_element.css">
    </head>

    <body>
    <?php
    // Définir les champs à tester
    $etiquettes = array ("pseudo" => "Pseudonyme",
    "titre_m" => "Titre de la Fiche pour le moteur de recherche",
    "description" => "Description de la fiche pour le moteur de recherche",
    "titre_f" => "Titre de la Fiche",
    "texte" => "Contenu de la Fiche",
    "origine" => "Origine",
    "constructeur" => "Constructeur",
    "taille" => "taille",
    "armement" => "Armement",
    "equipage" => "Equipage",
    "affiliation" => "Affiliation",
    "systeme" => "Système",
    "region" => "Région",
    "type" => "Type",
    "climat" => "Climat",
    "espece" => "Espèce",
    "language" => "Language");

    // controler tous les champs sauf ceux des caractéristiques : origine, constructeur, taille, armement, equipage, affiliation, systeme, region, type, climat, espece, language.
    foreach ($_POST as $clé => $valeur)
    {if ($valeur =="")
    { if ($clé != "origine")
    {
    { $champVide[$clé] = "blanc";
    }
    }
    }
    } //fin de la boucle foreach pour $_POST

    // Si l'un des champs est vide, afficher un message

    if (@sizeof ($champVide) > 0) //en cas de champ vide
    {echo " <br> <table width='670' border='0' align='center' cellpadding='0' cellspacing='0'>
    <tr>
    <td colspan='3'><div align='center' class='font_titre_fiche'>Créer une fiche </div></td>
    </tr>
    </table><br><table width='670' height='100' border='0' align='center' cellpadding='0' cellspacing='0'>
    <tr>
    <td height='15' background='images/design/barre_fiche_alert_h.png'></td>
    </tr>
    <tr>
    <td background='images/design/barre_fiche_alert_m.png'><table width='670' border='0' cellspacing='0' cellpadding='0'>
    <tr>
    <td width='83' valign='top'><img src='images/design/alert.png' width='83' height='83'></td>
    <td width='587' align='left' valign='top'><p class='font_avertissement_f' style='margin-left:10'>Les champs suivants n'ont pas &eacute;t&eacute; renseign&eacute;s, veuillez les remplir :<br>";
    //affichage du nom des informations requises
    foreach ($champVide as $clé => $valeur)
    {echo "<span class='font_avert_titre'>{$etiquettes[$clé]}<br>";
    } // Fin de la boucle foreach pour les champs vides
    {echo "</p>
    </td>
    </tr>
    </table></td>
    </tr>
    <tr>
    <td height='15' background='images/design/barre_fiche_alert_b.png'></td>
    </tr>
    </table>";}
    // réafficher le formulaire
    $pseudo=trim(strip_tags($_POST['pseudo']));
    $titre_m=trim(strip_tags($_POST['titre_m']));
    $description=trim(strip_tags($_POST['description']));
    $titre_f=trim(strip_tags($_POST['titre_f']));
    $texte=trim(strip_tags($_POST['texte']));
    $origine=trim(strip_tags($_POST['origine']));
    $constructeur=trim(strip_tags($_POST['constructeur']));
    $taille=trim(strip_tags($_POST['taille']));
    $armement=trim(strip_tags($_POST['armement']));
    $equipage=trim(strip_tags($_POST['equipage']));
    $affiliation=trim(strip_tags($_POST['affiliation']));
    $systeme=trim(strip_tags($_POST['systeme']));
    $region=trim(strip_tags($_POST['region']));
    $type=trim(strip_tags($_POST['type']));
    $climat=trim(strip_tags($_POST['climat']));
    $espece=trim(strip_tags($_POST['espece']));
    $language=trim(strip_tags($_POST['language']));

    echo ("
    <form name='form1' method='post' action='index.php?page=fiche_c'>
    <table width='670' border='0' align='center' cellpadding='0' cellspacing='0'>
    <tr>
    <td colspan='3' height='10'></td>
    </tr>
    <tr>
    <td width='420' height='50' class='font_recherche'><em><strong>*</strong>informations nécessaire </em></td>
    <td width='10' height='50'>&nbsp;</td>
    <td width='250' height='50'>&nbsp;</td>
    </tr>
    <tr>
    <td valign='top'><p class='font_chiff_compt' style='margin-left:10'>Information sur la fiche : </p>
    <p style='margin-left:10' class='font_recherche'>Speudo membre<strong>*</strong> :<br>
    <input name='pseudo' type='text' id='pseudo' size='73' value='$pseudo'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Titre de la Fiche<strong>*</strong> <em>(Titre qui s'affichera dans le moteur)</em> : <br>
    <input name='titre_m' type='text' id='titre_m' size='73' value='$titre_m'>
    <p style='margin-left:10' class='font_recherche'>Description courte<strong>*</strong> <em>(pour le moteur de recherche)</em> :<br>
    <textarea name='description' cols='73' rows='4' id='description'>$description</textarea>
    <p class='font_chiff_compt' style='margin-left:10'>Contenu de la Fiche :
    <p style='margin-left:10' class='font_recherche'>Titre de la Fiche<strong>*</strong> <em>(affiché dans la fiche, peut être détaillé)</em> :<br>
    <input name='titre_f' type='text' id='titre_f' size='73' value='$titre_f'>
    <p style='margin-left:10' class='font_recherche'>Texte de la Fiche<strong>*</strong> : <br>
    <textarea name='texte' cols='73' rows='40' id='texte'>$texte</textarea>
    </td>
    <td>&nbsp;</td>
    <td valign='top'><p><span class='font_chiff_compt' style='margin-left:10'>Caractéristiques détaillées : </span></p>
    <p style='margin-left:10' class='font_recherche'>Origine :<br>
    <input name='origine' type='text' id='origine' size='38' value='$origine'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Constructeur : <br>
    <input name='constructeur' type='text' id='constructeur' size='38' value='$constructeur'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Taille : <br>
    <input name='taille' type='text' id='taille' size='38' value='$taille'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Armement : <br>
    <textarea name='armement' cols='37' rows='4' id='armement'>$armement</textarea>
    </p>
    <p style='margin-left:10' class='font_recherche'>Equipage : <br>
    <textarea name='equipage' cols='37' rows='4' id='equipage'>$equipage</textarea>
    </p>
    <p style='margin-left:10' class='font_recherche'>Affiliation : <br>
    <input name='affiliation' type='text' id='affiliation' size='38' value='$affiliation'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Système : <br>
    <input name='systeme' type='text' id='systeme' size='38' value='$systeme'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Région : <br>
    <input name='region' type='text' id='region' size='38' value='$region'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Type : <br>
    <input name='type' type='text' id='type' size='38' value='$type'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Climat : <br>
    <input name='climat' type='text' id='climat' size='38' value='$climat'>
    </p>
    <p style='margin-left:10' class='font_recherche'><span class='font_recherche'>Espèce : <br>
    <input name='espece' type='text' id='espece' size='38' value='$espece'>
    </p>
    <p style='margin-left:10' class='font_recherche'>Language : <br>
    <input name='language' type='text' id='language' size='38' value='$language'>
    </p></td>
    </tr>

    <tr>
    <td height='20' valign='top'></td>
    <td height='20'></td>
    <td height='20' valign='top'></td>
    </tr>
    <tr>
    <td height='20' colspan='3' align='center' valign='top'><input type='submit' name='Submit' value='Envoyer'></td>
    </tr>
    <tr>
    <td height='20' valign='top'></td>
    <td height='20'></td>
    <td height='20' valign='top'></td>
    </tr>
    </table>
    </form>");

    }
    else // si tout es ok
    {

    $host="localhost";
    $user="root";
    $password="";
    $database="essaie";
    $connexion = mysql_connect($host,$user,$password) or die ("Connection a la base de donnée impossible");
    $db = mysql_select_db($database,$connexion) or die ("Sélection de la base de donnée impossible");
    $sql = "INSERT INTO fiche (id, pseudo, titre_m, description, titre_f, texte, origine, constructeur, taille, armement, equipage, affiliation, systeme, region, type, climat, espece, language) VALUES ('','$pseudo', '$titre_m', '$description', '$titre_f',' $texte', '$origine', '$constructeur', '$taille', '$armement', '$equipage', '$affiliation', '$systeme', '$region', '$type', '$climat', '$espece', '$language')";
    $result= mysql_query($sql) or die ("Exécution de la requête impossible");
    echo "Votre fiche a été postée. Elle sera validée dans les prochaines 4 heures. Merci.";
    }
    ?>
    </body>
    </html>

    J'espère que vous y arriverez .

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 641
    Points
    4 641
    Par défaut
    salut,

    tu n'es pas vraiment dans le bon forum. (ici c'est plus pour les problemes de requetes)

    Citation Envoyé par khalad
    Donc voila, après quelques heures a essayer de comprendre l'erreur, je soumet le code ici en espérant qu'une personne comprenne où moi je bloque.
    quelle erreur?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut et ben...
    le soucis en fait, c'est que je veux que certains champs ne soient pas vérifier, alors que la ils le sont tous et les champs vides sont signalés.

    comment je modifie ca pour qu'ils ne vérifie que certains champs très précis.

    P.S : je suis désolé, si je me suis trompé de forum. Il y avait marqué MySql, jai donc supposé que ma questio avait sa place... si le sujet est vraiment hors thème, je peux m'en aller.

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 641
    Points
    4 641
    Par défaut
    c'est plus du code PHP pour moi

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Bonsoir !

    J'ai trouvé la solution, il fallait faire :

    { if ($clé != "origine" && $clé!="constructeur" && $clé!="taille" && $clé!="armement" && $clé!="equipage" && $clé!="affiliation" && $clé!="systeme" && $clé!="region" && $clé!="type" && $clé!="climat" && $clé!="espece" && $clé!="language")

    voila, et la c'est bon, ca marche comme je voulais. Je vous remercie de votre aide.

    Il me semble que je dois déclaré le sujet résolu non ? Comment dois-je procéder ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Problème insertion d'un champ dans un formulaire déjà créé
    Par Pastresfort dans le forum IHM
    Réponses: 2
    Dernier message: 30/05/2013, 00h48
  2. [AC-2000] Problème de champ dans un formulaire
    Par egautier18 dans le forum VBA Access
    Réponses: 1
    Dernier message: 02/11/2010, 15h12
  3. [MySQL] Problème pour récupèrer les champs d'un formulaire qui se trouve dans un while
    Par mademoizel dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 21/03/2008, 14h59
  4. vérification de champ dans un formulaire
    Par didierledid dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 26/12/2007, 09h26
  5. Vérification de champ dans un formulaire
    Par akara dans le forum Langage
    Réponses: 2
    Dernier message: 16/07/2007, 15h24

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