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 :

Mettre une case à cocher devant la ligne


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut Mettre une case à cocher devant la ligne
    Bonjour,

    Je dois récupérer des données de 2 tables.
    Cela ne me pose pas de problème.
    Ce que j'aimerais faire, c'est que pour chaque ligne trouvée, il me mette juste à côté un checkbox.
    Comment dois-je procéder ?

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="checbox" />';
    Plus serieusement comment veux-tu qu'on t'aide avec si peu d'information ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 124
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 124
    Points : 8 286
    Points
    8 286
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par cdevl32 Voir le message
    Je dois récupérer des données de 2 tables.
    Cela ne me pose pas de problème.
    Ce que j'aimerais faire, c'est que pour chaque ligne trouvée, il me mette juste à côté un checkbox.
    Comment dois-je procéder ?
    Quel est le pb ? Ne connaîs-tu pas le HTML d'une checkbox ? A+
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  4. #4
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut checkbox dans une table
    Bonsoir,

    Le code ci-dessous fonctionne très bien.
    Je voudrais savoir comment faire pour qu'à la place de trouver le X du champ HPROCSTATUS et l'afficher, il mette à la place un checkbox ?

    J'aurais une seconde question : pour chaque ligne que j'aurai coché, il devrait me faire un insert et me remplacer le X par un blanc dans ma table.

    Voici mon code :
    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
     
    <html> 
    <body>
    <?php 
    $conn=odbc_connect(mabase,'',''); 
    if (!$conn) 
    {exit("Connection Failed: " . $conn);} 
    $sql="SELECT SGCHISTO.HTYPE, SGCHISTO.HDOCNO, SGCHISTO.HPROCSTATUS FROM SGCHISTO WHERE SGCHISTO.HTYPE='S' AND SGCHISTO.HPROCSTATUS='X'"; 
    $rs=odbc_exec($conn,$sql); 
    if (!$rs) 
    {exit("Error in SQL");} 
    echo "<table><tr>"; 
    echo "<th>HTYPE</th>"; 
    echo "<th>HDOCNO</th>"; 
    echo "<th>HPROCSTATUS</th></tr>"; 
    while (odbc_fetch_row($rs)) 
    { 
    $HTYPE=odbc_result($rs,"HTYPE"); 
    $HDOCNO=odbc_result($rs,"HDOCNO"); 	   
    $HPROCSTATUS=odbc_result($rs,"HPROCSTATUS");
    echo "<tr><td align='center'>$HTYPE</td>"; 
    echo "<td align='center'>$HDOCNO</td>"; 	
    echo "<td align='center'>$HPROCSTATUS</td></tr>";
    } 
    odbc_close($conn); 
    echo "</table>"; 
    ?>
    </body> 
    </html>

  5. #5
    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
    Commence par ecrire ta case a cocher et ton formulaire dans ton code, tu verras apres les problemes qu'il te reste.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Voilà, j'ai réussi à remplacer le x par une case à cocher.
    Maintenant, comment dois-je faire pour qu'à chaque case qui sera cochée, il ajoute une valeur dans la ligne concernée de la table de données, c'est-à-dire HPROCSTATUS ?

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    { 
    $HTYPE=odbc_result($rs,"HTYPE"); 
    $HDOCNO=odbc_result($rs,"HDOCNO"); 	   
    $HPROCSTATUS=odbc_result($rs,"HPROCSTATUS");
    echo "<tr><td align='center'>$HTYPE</td>"; 
    echo "<td align='center'>$HDOCNO</td>"; 	
    echo "<td align='center'><input type=\"checkbox\" name=\"ok[]\"   value=\"".$val[$HPROCSTATUS]."\"></td></tr>";
    }

  7. #7
    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
    Tu parcours ensuite ton $_POST['ok'] recu du formulaire et qui contiendra les "value" des cases cochées.
    Pour chaque "value" tu ferras l'action que tu veux.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Merci à vous pour votre réponse.
    Avez vous un petit exemple à me montrer

    Bonjour,

    J'ai essayer avec le form pour faire un test et juste faire l'affichage des cases qui auront été sélectionner mes je n'y parviens pas ??

    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
     
    <html> 
    <body>	   
    <form action="<?$PHP_SELF;?>" method="post">
    <?php 
    $conn=odbc_connect(mabase,'',''); 
    if (!$conn) 
    {exit("Connection Failed: " . $conn);} 
    $sql="SELECT SGCHISTO.HTYPE, SGCHISTO.HDOCNO, SGCHISTO.HPROCSTATUS FROM SGCHISTO WHERE SGCHISTO.HTYPE='S' AND SGCHISTO.HPROCSTATUS='X'"; 
    $rs=odbc_exec($conn,$sql); 
    if (!$rs) 
    {exit("Error in SQL");} 
    echo "<table><tr>"; 
    echo "<th>HTYPE</th>"; 
    echo "<th>HDOCNO</th>"; 
    echo "<th>HPROCSTATUS</th></tr>"; 					  
    while (odbc_fetch_row($rs)) 
    { 
    $HTYPE=odbc_result($rs,"HTYPE"); 
    $HDOCNO=odbc_result($rs,"HDOCNO"); 	   
    $HPROCSTATUS=odbc_result($rs,"HPROCSTATUS");  
     
    echo "<tr><td align='center'>$HTYPE</td>"; 
    echo "<td align='center'>$HDOCNO</td>"; 	
    echo "<td align='center'><input type=\"checkbox\" name=\"vartb[]\"   value=\"".$val[$HPROCSTATUS]."\"></td></tr>";	
     
    foreach($_POST['vartb'] as $vartb){ 
        echo $vartb.'<br />'; 
    } 
     
    } 
    odbc_close($conn); 
    echo "</table>"; 
    ?>		  
    <input type="submit" value="valider" name="ok">
    </form>
    </body> 
    </html>
    Bonjour,

    Pouvez vous me dire ou dois je ajouter ma balise form dans mon code, pour se qui est de la méthode method="post" comme je reste dans le même fichier à la place de post c'est bien SELF ?

  9. #9
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Citation Envoyé par cdevl32 Voir le message
    Bonjour,

    Pouvez vous me dire ou dois je ajouter ma balise form dans mon code, pour se qui est de la méthode method="post" comme je reste dans le même fichier à la place de post c'est bien SELF ?
    Pour l'attribut method, tu as le choix entre "post" et "get". C'est la méthode d'envoi des données au site par le navigateur de l'utilisateur.
    Si tu choisis "post", tu récupèreras les données dans le tableau $_POST. Si tu choisis "get" ce sera dans $_GET.

    Pour l'attribut action, la variable $_SERVER['PHP_SELF'] peut t'aider vu qu'elle contient le chemin de la page courante.

    J'espère que cela t'aidera.

    [edit]
    Pour les autres points qui "ne marchent pas", peux-tu être plus précis sur ce qui cloche ?
    [/edit]

  10. #10
    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
    à la place de post c'est bien SELF ?
    POST et SELF n'ont rien a voir.
    La methode reste "post" l'action peut effectivement est $_SERVER['PHP_SELF'] (écriture actuelle).

    Pour la question de l'emplacement de <form> c'est toi qui voit dans l'agencement de ton HTML.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Merci pour vos réponse.

    J'ai tester avec ce code ci dessous pour afficher simplement les cases à cocher et je n'obtient rien ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    foreach ($_POST['vartb'] as $choix) 
    echo '<td>'."Choix utilisateur : ".$choix.'</td>';

  12. #12
    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
    Ou est le <input> de la case de ce code ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  13. #13
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Voici le input :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<td align='center'><input type=\"checkbox\" name=\"vartb[]\"   value=\"".$val[$HPROCSTATUS]."\"></td></tr>";
    Bonsoir,

    Je ne parviens toujours pas à récupérer les données de mon checkbox
    J'ai essayer avec ce bou de code ci dessous mais toujours rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    echo "<td align='center'><input type=\"checkbox\" name=\"vartb[]\"   value=\"".$val[$HPROCSTATUS]."\"></td></tr>";
     
    foreach ($_POST['vartb'] as $choix) 
    echo '<td>'."Choix : ".$choix.'</td>';

  14. #14
    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
    fait un print_r($_POST['vartb']) pour controler
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #15
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Bonjour,

    J'ai fais le test avec votre instruction et toujour rien à l'affichage, voici mon source complet :

    Pour se qui est de la balise <form> ou dois je la placer dans mon code ?

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    <html> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    P { FONT-SIZE: 8pt; COLOR: #000000; FONT-FAMILY: Verdana, Tahoma, Arial}
    TD { FONT-SIZE: 8pt; COLOR: #000000; FONT-FAMILY: Verdana, Tahoma, Arial} 
    TH { FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Verdana, Tahoma, Arial} 
    h2 { FONT-SIZE: 18pt; COLOR: #EF0000; FONT-FAMILY: Verdana, Tahoma, Arial}
    -->
    </style>
    </head>
    <body>
    <?php 
    $conn=odbc_connect(mabase,'',''); 
    if (!$conn) 
    {exit("Connection Failed: " . $conn);} 
    $sql="SELECT * FROM SGCHISTO WHERE SGCHISTO.HTYPE='S' AND SGCHISTO.HPROCSTATUS='X' ORDER BY SGCHISTO.HDOCDATE"; 
    $rs=odbc_exec($conn,$sql); 
    if (!$rs) 
    {exit("Error in SQL");} 
    echo "<table style='background-color : white'><tr>";  
     
    echo "<th>N° de documents</th>";
    echo "<th>Date</th>";
    echo "<th>Date d'échéance</th>";
    echo "<th>Montants</th>"; 
    echo "<th>Commentaire</th>";
    echo "<th>Bloquer</th></tr>"; 					  
    while (odbc_fetch_row($rs)) 
    {  
    $HDOCNO=odbc_result($rs,"HDOCNO"); 	
    $HDOCDATE=odbc_result($rs,"HDOCDATE");
    $HDUEDATE=odbc_result($rs,"HDUEDATE"); 
    $HMOUNTH=odbc_result($rs,"HMOUNTH"); 
    $HREMINT=odbc_result($rs,"HREMINT");    
    $HPROCSTATUS=odbc_result($rs,"HPROCSTATUS");  
     
     
    echo "<td align='center'>$HDOCNO</td>"; 	
    echo "<td align='center'>$HDOCDATE</td>"; 
    echo "<td align='center'>$HDUEDATE</td>"; 
    echo "<td align='center'>$HMOUNTH</td>"; 
    echo "<td align='center'>$HREMINT</td>";  
     
    echo "<td align='center'><input type=\"checkbox\" name=\"vartb[]\"   value=\"".$val[$HPROCSTATUS]."\"></td></tr>";	
    print_r($_POST['vartb']);
     
    } 
    odbc_close($conn); 
    echo "</table>"; 
    ?>
    </body> 
    </html>

  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
    Revois les bases avant d'aller plus loin :
    http://sylvie-vauthier.developpez.co...ulaires#LIII-1
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  17. #17
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Justement se que je voudrais faire c'est ajouter mon form dans le même fichier sans appeler un autre .php

  18. #18
    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
    Ba fais le.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Suppression de ligne par une case à cocher
    Par adam974 dans le forum Langage
    Réponses: 15
    Dernier message: 09/01/2009, 15h55
  2. Mettre une légende sur une case à cocher
    Par bigounet dans le forum IHM
    Réponses: 5
    Dernier message: 27/11/2008, 08h52
  3. Ajouter une case à cocher par ligne dans mon tableau
    Par beegees dans le forum Langage
    Réponses: 4
    Dernier message: 02/11/2008, 10h30
  4. Réponses: 12
    Dernier message: 03/12/2007, 18h53
  5. Réponses: 3
    Dernier message: 27/02/2007, 21h12

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