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 :

[Dates] Probleme d'affichage avec les checkbox


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2006
    Messages : 304
    Points : 77
    Points
    77
    Par défaut [Dates] Probleme d'affichage avec les checkbox
    Bonjour :j'ai un probleme d'affichage: je m'exprime, j'ai crée une form qui contient un checkbox contenant les chap,s que l'utilisateur veut afficher mais le probleme c'est comment afficher les resultat sachant que ma requete marche tres bien et voile :
    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
    <html>
    <body>
    <font color=yellowgreen><h3 align=center><u>Choisissez les champs que vous voulez afficher !</u></font><br><br>
    <form method="POST" action="affiche2.php">
    <center>
         <table bgcolor=yellowgreen>
               <tr>
                   <td><u><font color=white>Champs : </u></font></td>
                   <td><input type=checkbox name=champs value="Code_Ouvrage"><font color=white>Code ouvrage</font></td>
                   <td><input type=checkbox name=champs value="Titre"><font color=white>Titre</font></td>
                   <td><input type=checkbox name=champs value="Discipline"><font color=white>Discipline</font></td>              
                   <td><input type=checkbox name=champs value="Auteur_principal"><font color=white>Auteur principal</font></td>              
                   <td><input type=checkbox name=champs value="Prix_achat"><font color=white>Prix achat</font></td>              
                   <td><input type=checkbox name=champs value="Date_achat"><font color=white>Date achat</font></td>              
                   <td><input type=checkbox name=champs value="Affectation"><font color=white>Affectation</font></td>              
                </tr>
         </table>
                 <br>
                    <center><INPUT TYPE="SUBMIT" name="val" VALUE="Afficher">
    </form>
    </body>
    </html>
    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>
    <body>
    <?
    mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    mysql_select_db ("biblio")or die ("Impossible d'accéder à la base de données");
    $champs=$_POST['champs'];
    $requete="SELECT $champs FROM ouvrage ";
    $result=mysql_query($requete);
    echo '<font color="Blue"><u><center>Maria</u></font><br><br><br>';
     
    while($res = mysql_fetch_array($result))
    {
     echo $res['Titre']."<br>";
    }
    ?>
    </body>
    </html>
    Veuillez m'aider !

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2006
    Messages : 304
    Points : 77
    Points
    77
    Par défaut pas de reponse
    Please comment j px afficher les enregistrements des champs q j coisis a travers un chekbox:
    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
    <html>
    <body>
    <?
    mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    mysql_select_db ("biblio")or die ("Impossible d'accéder à la base de données");
     
    echo '<font color="orange"><u><center>Résultat !</u></font><br><br><br>';
     
    if (!empty ($_POST['champs']))
     {
    $check = implode(',', $_POST['champs']);
    //echo $check."<br>";
     }
    $requete="SELECT $check FROM ouvrage ";
    $result=mysql_query($requete);
     
    $nchamps=mysql_num_fields($result);
    //echo $nchamps;
     
    $i=0; // c la ou j'ai l probleme il m'affiche pas ts les enregistrements des champs choisis par l'utilisateur
    while($res = mysql_fetch_array($result) )
    {
     echo $res[$i]."<br> ";
     $i++;
    }
    ?>
    </body>
    </html>

  3. #3
    Fabouney
    Invité(e)
    Par défaut
    C'est normal, il faut que tu boucles sur les cade à cocher,

    nouveau formulaire :

    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
    <form method="POST" action="affiche2.php">
    <center>
         <table bgcolor=yellowgreen>
               <tr>
                   <td><u><font color=white>Champs : </u></font></td>
                   <td><input type=checkbox name=champs[] value="Code_Ouvrage"><font color=white>Code ouvrage</font></td>
                   <td><input type=checkbox name=champs[] value="Titre"><font color=white>Titre</font></td>
                   <td><input type=checkbox name=champs[] value="Discipline"><font color=white>Discipline</font></td>              
                   <td><input type=checkbox name=champs[] value="Auteur_principal"><font color=white>Auteur principal</font></td>              
                   <td><input type=checkbox name=champs[] value="Prix_achat"><font color=white>Prix achat</font></td>              
                   <td><input type=checkbox name=champs[] value="Date_achat"><font color=white>Date achat</font></td>              
                   <td><input type=checkbox name=champs[] value="Affectation"><font color=white>Affectation</font></td>              
                </tr>
         </table>
                 <br>
                    <center><INPUT TYPE="SUBMIT" name="val" VALUE="Afficher">
    </form>

    ensuite dans ton code PHP tu fait quelque chose comme ceci :

    code php ans ton affiche2.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
     
    mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    mysql_select_db ("biblio")or die ("Impossible d'accéder à la base de données");
    $champs=$_POST['champs'];
    $sql="SELECT ";
     
    if($_POST['val'])
    {
    	for($i=0;$i<sizeof($champs);$i++)
    		$sql.=($i == sizeof($champs)-1)?"{$champs[$i]} ":"{$champs[$i]},";
     
    $sql.="FROM ouvrage";
    $result=mysql_query($sql) or die(mysql_error());
    echo '<font color="Blue"><u><center>Maria</u></font><br><br><br>';
     
    while($res = mysql_fetch_array($result))
     echo $res['Titre']."<br>";
    }
    Dernière modification par julp ; 07/12/2006 à 19h13. Motif: code=html

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2006
    Messages : 304
    Points : 77
    Points
    77
    Par défaut Encore le meme probleme d'affichage
    Bonjour,j'ai encore le meme problème :
    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
    mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    mysql_select_db ("biblio")or die ("Impossible d'accéder à la base de données");
    $champs=$_POST['champs'];
    $sql="SELECT ";
     
    if($_POST['val'])
    {
    	for($i=0;$i<sizeof($champs);$i++)
    		$sql.=($i == sizeof($champs)-1)?"{$champs[$i]} ":"{$champs[$i]},";
     
    $sql.="FROM ouvrage";
    $result=mysql_query($sql) or die(mysql_error());
    echo '<font color="Blue"><u><center>Maria</u></font><br><br><br>';
     
    while($res = mysql_fetch_array($result))  
     echo $res['Titre']."<br>"; //C'est la ou j'ai le probleme qu'est ce que je dois mettre pour qu'il m'affiche les enregistrement des chamsps selectionner
    }
    Please aidez moi !

  5. #5
    Fabouney
    Invité(e)
    Par défaut
    peux tu nous mettre la requête qui est effectuée, as tu essayé de la faire manuelement via phpmyadmin par exemple ?

    je pense que c'est tout simplement ta requête qui est fausse, donne nous la structure des bases concernées, et ce que tu veux exactement, merci d'avance.

  6. #6
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2006
    Messages : 304
    Points : 77
    Points
    77
    Par défaut probleme d'affichage avec les chekckbox
    Ma table ouvrage contients les champs que j'ai mentionné au dessous dans le formulaire, ma les champs renvoyé je px les récupérer et les insérer dans ma requete et ca marche tres bien mais j'arrive plus a afficher les enregistrement de ces champs parce que le résultat de la requete c'est a dire le tableau $res j dois mentionner les champs que je vx afficher et comme vous savez le nombre de $champs varie selon le choix de l'utilisateur ! vous avez compris mainteneat mon probleme cad je vx slment la syntaxe de la boucle while qui me permet d'affcher les enregistrement !
    Et merci pour votre aide

  7. #7
    Fabouney
    Invité(e)
    Par défaut
    while($res = mysql_fetch_array($result))
    echo $res['Titre']."<br>"; //C'est la ou j'ai le probleme qu'est ce que je dois mettre pour qu'il m'affiche les enregistrement des chamsps selectionner
    }
    c'est là le problème tu demandes d'afficher le champ "Titre" de la table ouvrage, or si le mec à pas coché la case "Titre" il va rien te retourner, et c'est totalement normal.

    donc fait ca par exemple et dit moi quoi :

    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
     
    mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    mysql_select_db ("biblio")or die ("Impossible d'accéder à la base de données");
    $champs=$_POST['champs'];
    $sql="SELECT ";
     
    if($_POST['val'])
    {
    	for($i=0;$i<sizeof($champs);$i++)
    		$sql.=($i == sizeof($champs)-1)?"{$champs[$i]} ":"{$champs[$i]},";
     
    $sql.="FROM ouvrage";
    $result=mysql_query($sql) or die(mysql_error());
    echo '<font color="Blue"><u><center>Maria</u></font><br><br><br>';
     
    while($res = mysql_fetch_array($result))  
     for($i=0;$i<sizeof($champs);$i++)
        echo $res[$champs[$i]]."<br>";
    }

  8. #8
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2006
    Messages : 304
    Points : 77
    Points
    77
    Par défaut probleme d'affichage avec les chekckbox
    Merci bcq ca tres bien marché ! Maria

  9. #9
    Fabouney
    Invité(e)
    Par défaut
    de rien, un petit "résolu" est ce sera parfait

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

Discussions similaires

  1. Probleme avec les CheckBox
    Par stratocasters dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 16/10/2009, 14h26
  2. probleme d'affichage avec les string d'1 liste chainee
    Par ghyslain dans le forum Débuter
    Réponses: 5
    Dernier message: 29/09/2009, 11h15
  3. probleme CGI avec les checkbox
    Par fren7fr dans le forum Web
    Réponses: 0
    Dernier message: 28/11/2007, 09h28
  4. [MySQL] Probleme d'affichage avec des checkbox
    Par napz dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 08/11/2006, 14h43
  5. problemes de performances avec les requetes select
    Par berry dans le forum Requêtes
    Réponses: 3
    Dernier message: 10/07/2003, 13h39

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