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

PHP & Base de données Discussion :

Affichage de données à partir d'un formulaire


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Affichage de données à partir d'un formulaire
    Bonjour,

    je ne sais pas si c'est la bonne place pour mon problème, sinon,
    n'hésitez pas à déplacer le sujet.

    Alors voilà, je désirerais faire une application du même genre que sur ce lien :
    ICI

    L'application a en faite 3 fichiers :
    *le formulaire php qui donne en Action Post...
    *Choix_licencies.php (affichage du résultat du formulaire)
    *Details_licencies.php (affichage approfondi du même licencié via un lien sur son N° de licence)

    Voilà pour la technique, passons à la pratique :

    Avec le formulaire, j'ai 2 champs : (1 des 2 doit être rempli)
    Licence
    Nom
    + bouton de validation

    Je voudrais avoir un résultat dans le fichier Choix_licencies.php si je rentre un N° de licence ou un nom.
    Une fois ce n° de licence affiché, j'irais sur la page Details_licencies.php en cliquant sur ce N° de licence, pour avoir des détails plus appronfondi sur la personnes (nom, prénom, adresse, etc....)

    Pour mieux comprendre, entrez le N° 72 sur le lien du site que je vous ai mis et validez.
    Vous voyez s'afficher les infos se rapportant à ce N° 72.
    Comme vous le voyez, ce N° a un lien actif, cliquez dessus et là vous aurez tout en détails.
    Vous comprenez donc qu'un N° de licence peut avoir plusieurs type de licences.
    J'espère avoir été assez clair sur ce que je voudrais.

    Ma base et mes tables sont créées via phpmyadmin, donc inutile de me parler de easy mysql ou autre, je ne travaille pas en local.

    Merci pour vos réponses.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    Quell est l'element qui te bloque dans la réalisation de ton projet ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    En faite, ce que je voudrais, c'est l'affichage du résultat correspondant qu'au N° de licence ou nom demandé dans le formulaire et non tous les noms d'une même table.

    Ex: je rentre 72 en N° de licence, de la table Directeur de course.
    je voudrais avoir que les infos de ce 72 et non toute la table.

  4. #4
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Ben tu as plusieurs possibilité la première tu met un tableau contenant tous les numero de licence avec un lien comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<a href="mapage.php?ref='.$JeuEnr['ref'].'" >'.$JeuEnr['NomLicence'].'</a>';
    Sachant que ce tableau sera rempli avec un SELECT * de la table licence jusque la ca va?

    Ensuite sur "mapage.php" tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $ref=$_GET['ref'];
     
    // puis le select sur la reference
    ►Ne pas oublier le

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    ouais, seulement les codes et moi ça fait 2
    j'arrive pas à trouver le bon code qui pourrait m'afficher ce que je veux.
    car là, ça m'affiche toute la table dans un tableau alors que je ne voudrais afficher qui ce qui est demandé dans le formulaire

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il faut commencer par nous montrer ton code pour qu'on puisse t'aider.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Citation Envoyé par rallyeman Voir le message
    ouais, seulement les codes et moi ça fait 2
    j'arrive pas à trouver le bon code qui pourrait m'afficher ce que je veux.
    car là, ça m'affiche toute la table dans un tableau alors que je ne voudrais afficher qui ce qui est demandé dans le formulaire
    On affiche d'abord un tableau avec toute les liences tu choisi celle que tu veux modifier par exemple et dans l'autre script "mapage.php" tu as ton formulaire pré rempli avec les résultats de ta requete

    Mais comme dit Sabotage montre nous déjà ce que tu as fait^^
    ►Ne pas oublier le

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Mon Fomulaire pour insèrer des licenciés :
    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
    36
    37
    38
    <?
    <form name="inscription" method="post" action="form.php">
                N° Licence : <input type="text" name="Licence"/> <br/>
                Asa :  	<input type="text" name="Asa"/> <br/>
                Nom : <input type="text" name="Nom"/><br/>
    			Prenom : <input type="text" name="Prenom"/><br/>
    			Adresse : <input type="text" name="Adresses"/><br/>
    			Ville : <input type="text" name="Villes"/><br/>
    			Tel : <input type="text" name="Tel"/><br/>
    			Email : <input type="text" name="Email"/><br/>
                <input type="submit" name="valider" value="ENVOYER"/>
            </form>
            <?php
            if (isset ($_POST['valider'])){
                //On récupère les valeurs entrées par l'utilisateur :
                $Licence=$_POST['Licence'];
                $Asa=$_POST['Asa'];
                $Nom=$_POST['Nom'];
    			$Prenom=$_POST['Prenom'];
    			$Adresses=$_POST['Adresses'];
    			$Villes=$_POST['Villes'];
    			$Tel=$_POST['Tel'];
    			$Email=$_POST['Email'];
                //On se connecte
                connectMaBase();
     
                //On prépare la commande sql d'insertion
                $sql = 'INSERT INTO Chefs_Poste VALUES("'.$Licence.'","'.$Asa.'","'.$Nom.'","'.$Prenom.'","'.$Adresses.'","'.$Villes.'","'.$Tel.'","'.$Email.'")'; 
     
                /*on lance la commande (mysql_query) et au cas où, 
                on rédige un petit message d'erreur si la requête ne passe pas (or die) 
                (Message qui intègrera les causes d'erreur sql)*/
                mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); 
     
                // on ferme la connexion
                mysql_close();
            }
            ?>
    Ma page résultats : (c'est là que ça foire car ça affiche toute le table au lieu qu'une partie désirée)
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    // connection à la DB
    $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
    mysql_select_db($db) or die ('Erreur :'.mysql_error());
     
    // requête SQL qui compte le nombre total d'enregistrement dans la table et qui
    //récupère tous les enregistrements
    $select = 'SELECT Licence,Asa,Nom,Prenom,Adresses,Villes,Tel,Email FROM Chronometreurs_Stagiaires';
    $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
    $total = mysql_num_rows($result);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($total) {
        // debut du tableau
        echo '<table bgcolor="#FFFFFF">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 8 colonnes
            echo '<tr>';
            echo '<td bgcolor="#669999"><div style="text-align: center"><b>Licence</b></div></td>';
            echo '<td bgcolor="#669999"><div style="text-align: center"><b>Asa</b></div></td>';
          echo '<td bgcolor="#669999"><div style="text-align: center"><b>Nom</b></div></td>';
            echo '<td bgcolor="#669999"><div style="text-align: center"><b>Prenom</b></div></td>';
    		echo '<td bgcolor="#669999"><div style="text-align: center"><b>Adresse</b></div></td>';
    		echo '<td bgcolor="#669999"><div style="text-align: center"><b>Villes</b></div></td>';
          echo '<td bgcolor="#669999"><div style="text-align: center"><b>Tel</b></div></td>' ;
    	  echo '<td bgcolor="#669999"><div style="text-align: center"><b>Email</b></div></td>' ;
          echo '</tr>'."\n";
        // lecture et affichage des résultats sur 8 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_array($result)) {
            echo '<tr>';
            echo '<td bgcolor="#CCCCCC">'.$row["Licence"].'</td>';
            echo '<td bgcolor="#CCCCCC">'.$row["Asa"].'</td>';
          echo '<td bgcolor="#CCCCCC">'.$row["Nom"].'</td>';
            echo '<td bgcolor="#CCCCCC">'.$row["Prenom"].'</td>';
    		echo '<td bgcolor="#CCCCCC">'.$row["Adresses"].'</td>';
    		echo '<td bgcolor="#CCCCCC">'.$row["Villes"].'</td>';
          echo '<td bgcolor="#CCCCCC">'.$row["Tel"].'</td>';
    	  echo '<td bgcolor="#CCCCCC">'.$row["Email"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
        // fin du tableau.
    }
    else echo 'Pas d\'enregistrements dans cette table...';
     
    // on libère le résultat
    mysql_free_result($result);
     
    ?>

  9. #9
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $select = 'SELECT Licence,Asa,Nom,Prenom,Adresses,Villes,Tel,Email FROM Chronometreurs_Stagiaires';
    Avant de faire le select pourquoi ne pas faire un formulaire ou l'utilisateur choisi une licence ensuite après le bouton submit tu fais la requete avec une clause WHERE.

    A moins que j'ai mal compris ton besoin^^
    ►Ne pas oublier le

  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Le problème, c'est que la personne qui a le nom, ne connait pas forcément son N° licence et inversement, d'où l'utilité de mon application.
    C'est pour ça que je ne veux pas faire un tableau rempli de N°
    plus besoin de mysql alors, un simple tableau excel ferait l'affaire. (ce que je ne veux bien sur pas)

  11. #11
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Ok on oublie la tableau Mais gardon mon idée du formulaire avant : Pourquoi ne pas faire de liste déroulante sur le nom?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $select = 'SELECT Nom FROM Chronometreurs_Stagiaires
    Ensuite tu rempli la liste déroulante et en fonction du choix de la personne afficher les informations?
    ►Ne pas oublier le

  12. #12
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Là aussi, plus besoin de mysql
    autant faire tout en php.

    y a surement un moyen, puisque le mec qui a le site a pu le faire sans tableau ni de liste déroulante.

    merci quand même pour tes réponses, je vais continuer à chercher

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    un petit exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    echo '<form action="" method="post">
    <input type="text" name="nom" />
    <input type="text" name="license" />
    <input type="submit" />
    </form>';
    if (isset($_POST['nom'])) { $where[] = "nom LIKE '%" . mysql_real_escape_string($_POST['nom']) . "'%"; }
    if (isset($_POST['license'])) { $where[] = "license=" . intval($_POST['license']); }
    $select = 'SELECT Licence,Asa,Nom,Prenom,Adresses,Villes,Tel,Email FROM Chronometreurs_Stagiaires';
    if (isset($where)) { $select .= ' WHERE ' . implode(" AND ", $where); }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  14. #14
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Tu crois que sur ce lien : http://www.ffsa.org/pratiquer/licenc...icencies&p=127 il n'y a pas de base de données derrière? Oo

    Alors la tu te trompe je pense il y a un formulaire de rechercher et lorsqu'il soumet le formulaire il envoi une requete qui affichera le résultat !

    Il fait ce que l'on appel une recherche multi critère rien de bien sorcier ...

    En gros tu test chaque $_POST de champ chaque fois qu'il n'est pas vide tu peux faire une concaténation de clause :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // tu fais un test sur un premier $_POST
    $requete ='SELECT * FROM MaTable WHERE numLicence ="'.$_POST['txtNumLic'].'"';
    if (!empty($_POST['txtNom'])){
     
    $requete.=' AND txtNom="'.$_POST['txtNom'].'"';
    }
    Bon c'est à titre d'exemple bien sur

    EDIT : Ha je suis toujours aussi lent ^^ Bref le code de Sabotage est mieux que mon exemple
    ►Ne pas oublier le

  15. #15
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Bon je laisse tomber, j'arrive à rien

  16. #16
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Qu'est ce qui ne marche pas avec l'exemple que je t'ai donné ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. remplir les données à partir d'un formulaire
    Par hafcher dans le forum Langage
    Réponses: 7
    Dernier message: 17/06/2008, 14h18
  2. [MySQL] Insérer des données à partir d'un formulaire
    Par super-java dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 15/10/2007, 11h01
  3. Réponses: 3
    Dernier message: 25/07/2007, 16h48
  4. Réponses: 12
    Dernier message: 26/04/2007, 11h38
  5. Insertion de données à partir d'un formulaire
    Par zeugzeug dans le forum Requêtes
    Réponses: 2
    Dernier message: 19/04/2007, 15h10

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