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 :

Remplissage de formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut Remplissage de formulaire
    Bonjour à tous !

    J'ai un petit souci.

    Voilà, j'ai un formulaire dont voici le code (en résumé) :
    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
    20
    21
    22
    23
     
    <?php
    	if (isset($_POST['numClient']))
    	{
    		$mysql_result = mysql_query("SELECT numClient, nomClient, prenomClient,adresseClient, CP FROM client WHERE EF_Id=".$_POST['numClient']);
    while ($ligne = mysql_fetch_array($mysql_result))
    		{
    		    $Id=$ligne[0];			$Adresse=$ligne[3];
    		    $Nom=$ligne[1];			$CP=$ligne[4];
                        $Prenom=$ligne[2];
    ?>
     
    <form id="Form1" method="post">
    <input="text" name="numClient" value="<?php echo $Id; ?>">numéro client</input><button="submit" action="mapage.php&numClient=<?php echo &Id; ?>">envoyer</submit>
    <input="text" name="Nom" value="<?php echo $Nom; ?>">Nom</input>
    <input="text" name="Prenom" value="<?php echo $Prenom; ?>">Prenom</input>
    <input="text name=adresse" value="<?php echo $Adresse; ?>">Adresse</input>
    <input="text" name="CP" value="<?php echo $CP; ?>">CP</input>
    </form> 
    <?php                  
                   }               
          }
    ?>
    Ce que je souhaite c'est qu'en arrivant sur la page, le formulaire apparaisse vide et que lorsque l'on complète le n° client et qu'on valide, les autres champs viennes se complèter en puisant dans ma base mysql.

    Et mon code est foireux...

    Donc si vous aviez des conseils je suis preneur !
    Merci

  2. #2
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Salut,

    Qu'est-ce qui ne fonctionne pas exactement ? Là c'est trop vague, il faut préciser...

    A première vue pour commencer pour renseigner un champ l'attribut s'appelle value et pas values.
    Il manque aussi un point-virgule après $Prenom=$ligne[2].

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Citation Envoyé par Amara Voir le message
    Salut,

    Qu'est-ce qui ne fonctionne pas exactement ? Là c'est trop vague, il faut préciser...

    A première vue pour commencer pour renseigner un champ l'attribut s'appelle value et pas values.
    Il manque aussi un point-virgule après $Prenom=$ligne[2].
    Pour les value exact, mais c'est une faute de frappe qui n'est pas présente dans mon code d'origine (suivi d'un copier/coller c'est pour ça qu'elle est partout) pareil pour le point virgule.

    Là le souci c'est que rien ne s'affiche, même pas le formulaire: page blanche.
    Et ce que je veux c'est qu'en arrivant sur ma page mon formulaire apparaisse mais vide. Et qu'ensuite en entrant un n° de client, l'utilisateur valide et voit apparaitre touts les infos du client dans les autres champs.

  4. #4
    Membre confirmé
    Étudiant
    Inscrit en
    Janvier 2010
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2010
    Messages : 73
    Par défaut
    l'utilisateur doit attendre le chargement de la page sinon tu dois utiliser ajax
    pour la page blanche enleve le formulaire essaie pour voir si ta requête renvoi quelque chose puis verifie la syntaxe dans ton formulaire.
    essaie de diviser le code pour detecter les erreurs et on t'aidera pour corriger

  5. #5
    Membre confirmé
    Étudiant
    Inscrit en
    Janvier 2010
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2010
    Messages : 73
    Par défaut
    avant tout le formulaire ne renvoie a aucune page?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Citation Envoyé par ridick Voir le message
    avant tout le formulaire ne renvoie a aucune page?
    Dsl je suis un boulet j'ai oublié de mettre l'action sur mon submit(corrigé), elle y était en revanche dans mon code d'origine.
    J'envoie ma variable $Id dans l'URL de ma page.

    Je viens de voir une erreur : j'ai fait un POST dans mon code php alors que pour récupérer ma variable c'est un GET

    bon ce n'ai pas règlé pour autant mais bon c'est mieux...

  7. #7
    Membre confirmé
    Étudiant
    Inscrit en
    Janvier 2010
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2010
    Messages : 73
    Par défaut
    verifie d'abord le resultat de ta requête en affichant le résultat et tien nous au courant

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Citation Envoyé par ridick Voir le message
    verifie d'abord le resultat de ta requête en affichant le résultat et tien nous au courant

    Ma requete me renvoie bien des résultats lorsque je l'applique avec un n°client dans le where

  9. #9
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    Citation Envoyé par oOBaalberithOo
    Ma requete me renvoie bien des résultats lorsque je l'applique avec un n°client dans le where
    comment le sais tu ?

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    En l'ayant tester avec un requêteur

  11. #11
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    un requêteur ? en php ?

  12. #12
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Si on se tient à ton code (1er post), tu as une 1ère condition qui fait que s'il y a aucun paramètre $_POST['numClient'], il n'y aura pas de formulaire d'affiché.

    Donc par défaut il n'y a pas de formulaire, donc impossible de saisir au minimum un N° de client.
    Aussi, je remarque que le critère sur la requête se fait apparemment sur un identifiant (champ EF_ID) et non pas le N° de client (champ numClient).


    A mon sens il te faudrait 2 formulaires :
    - Un formulaire avec un seul champ : numClient qui serait une zone de recherche et qui sera tout le temps affiché.

    - Une fois validé (submit) un N° client, et si celui est trouvé dans la BDD, alors le 2ème formulaire sera affiché avec les infos du client.

    De plus, du moins normalement, il n'est pas utile de faire un boucle avec un while, car un N° de client est unique, donc il ne peut avoir qu'1 seul résultat.
    $ligne (que je remplace ci-dessous par $clients) sera un tableau avec toutes les infos du client.

    Dernier petit truc.
    Il vaut mieux indiquer le nom de la page dans le formulaire (action="mapage.php"), et non pas dans le bouton submit.

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <?php
    $nombreClient = 0;
    $idClient = null;
    //
    if (isset($_POST['idClient']) && !empty($_POST['idClient'])) {
    	$idClient = mysql_real_escape_string($_POST['idClient']);
    	$mysql_result = mysql_query("SELECT numClient, nomClient, prenomClient, adresseClient, CP FROM client WHERE EF_Id = '".$idClient."'");
    	$nombreClient = mysql_num_rows($mysql_result);
    	$client = mysql_fetch_array($mysql_result);
    }
    ?>
     
    <!-- Zone de recherche -->
    <form name="form_idclient" action="mapage.php" method="post">
    <input type="text" name="idClient" value="<?php echo $idClient; ?>" />
    <input type="submit" value="Rechercher" />
    </form>
     
    <br />
     
    <?php
    if ((int)$nombreClient > 0 && !empty($client)) {
    ?>
    <!-- Information du client -->
    <form id="Form1" name="form_client" action="mapage.php" method="post">
    <input="text" name="numClient" value="<?php echo $client['numClient']; ?>">numéro client</input><button="submit">envoyer</submit>
    <input="text" name="Nom" value="<?php echo $client['nomClient']; ?>">Nom</input>
    <input="text" name="Prenom" value="<?php echo $client['prenomClient']; ?>">Prenom</input>
    <input="text name=adresse" value="<?php echo $client['adresseClient']; ?>">Adresse</input>
    <input="text" name="CP" value="<?php echo $client['CP']; ?>">CP</input>
    </form>
    <?php
    }
    ?>
    En esprérant que cela correspond un peu à ce que tu recherche, il qu'il y a pas trop d'erreurs

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

Discussions similaires

  1. Remplissage automatique formulaire
    Par rabobsky dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 04/01/2007, 20h47
  2. Pb de remplissage de formulaire
    Par yoyoo dans le forum Access
    Réponses: 4
    Dernier message: 09/08/2006, 16h29
  3. Remplissage de formulaire sur internet.
    Par Pragmateek dans le forum C++
    Réponses: 2
    Dernier message: 30/03/2006, 12h03
  4. [VB6]Remplissage du formulaire d'une page web
    Par tifosi49 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 18/08/2005, 11h13

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