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

ASP Discussion :

Ajouter des checkbox selon un certains nombre de champs


Sujet :

ASP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut Ajouter des checkbox selon un certains nombre de champs
    Bonjour a tous,

    Voila mon cas,

    J'ai plusieurs tables access, et je fais la connection avec elles via des pages ASP !!

    J'ai une table formation ( IDFormation, Formation ) et une table Encodage ( IDMatricule, IDFormation, Date )

    La premiere table Contient les formations disponibles et la deuxieme table contient l'id de la personne, l'id de la formation qu'elle a effectué et la date ou elle l'a effectué


    En fait me faudrait la liste des formations avec pour chaque formation une case a cocher a coté si la formation a ete effectué ou non !!

    Donc la case serait cocher si il existe idformation dans la tblencodage.

    Ma question est : es ce possible d'ajouter automatiquement des case a cocher suivant le nombre de formation dans la table formation ??

    Pas facile d'expliquer ca par ecrit.....si quelqu'un m'a compris se serait cool de répondre merchiiiiiiii

    je vais faire des print screen , se sera + simple !!

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Pour tes formations tu crées un recordset qui liste tes formations
    et ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Response.Write "<table ...>" & chr(10)
    while not rs_formation.EOF
          Response.Write "<tr>" & chr(10)
          Response.Write "    <td>" & chr(10)
          Response.Write rs_formation("nom_formation") & chr(10)
          Response.Write "    </td>" & chr(10)
          Response.Write "    <td>" & chr(10)
          Response.Write "    <input id=""" & rs_formation("id_formation") & """ type=""checkbox"">" & chr(10)
          Response.Write "    </td>" & chr(10)
          Response.Write "</tr>" & chr(10)
          Rs_formation.MoveNext
    Wend
    Response.Write "</table>" & chr(10)

    ensuite tu crées un recordset sur ta table de liaison formation/personne pour une personne et tu fais un truc du style :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Response.Write "<script language=""javascript"">" & chr(10)
    While not rs_form_pers.EOF
          Response.Write " document.getElementById('" &rs_form_pers("id_formation")&"').checked=true;" & chr(10)
          rs_form_pers.MoveNext
    Wend 
    Response.Write "</script>" & chr(10)

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Merciii j'essaye ca .....

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Franchement un tout grand MERCI !! ca marche super bien pour la consultation

    Reste plus qu'a essayer de faire la meme chose pour la modification des formations ( update )

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Dans ce cas tu rajoutes dans la checkbox un name et une value
    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ... name=""& Rs_formation("id_formation")&"" value="OK" ...
    et
    en traitement après validation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    While Not rs_formation.EOF
      If Request.Form(rs_formation("id_formation"))="OK" Then
         Rs_ajout_pers_form.Addnew
         Rs_ajout_pers_form("id_personne")=...
         Rs_ajout_pers_form("id_formation")=rs_formation("id_formation")
         Rs_ajout_pers_form.Update
      End If
      rs_formation.MoveNext
    Wend
    Là c'est plus que de l'aiguillage vers la réponse

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Et pour inserer la date a coté de la case a cocher ??

    Peut on inserer le code ainsi :

    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
    <%'----début de la boucle-----------%>
    <%RsTable.MoveFirst
     
    Response.Write "<table>" & chr(10) 
    do while not RsTable.eof and RsForm.eof
    %>
      <%
     
          Response.Write "<tr>" & chr(10) 
          Response.Write "    <td>" & chr(10) 
          Response.Write RsTable("Formation") & chr(10)
          Response.Write "    </td>" & chr(10) 
          Response.Write "    <td>" & chr(10) 
          Response.Write "    <input id=""" & RsTable("IDFormation") & """ type=""checkbox"">" & chr(10) 
          Response.Write "    </td>" & chr(10) 
    	  Response.Write "    <td>" & chr(10) 
    	  Response.Write "    <input id=""" & RsForm("Date") & """ type=""text"">" & chr(10) 
    	   Response.Write "    </td>" & chr(10) 
          Response.Write "</tr>" & chr(10) 
     
    %>
    <%RsTable.MoveNext 
    RsForm.moveNext 
     
    loop
    %>
    </table>
    Ca me donne une error occured !!!

  7. #7
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    A quoi correspondent tes recordsets ?
    Personnellement j'éviterais de manipuler 2 recordsets en même temps dans une boucle.
    Montres nous les requetes qui ont permis de les charger

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    RsForm.Open "Select * from tblEncodage WHERE IDMatricule =" &Sel , ConnTable
     
    RsTable.Open "Select * from tblFormation WHERE IDFormation <20" , ConnTable%>
    En fait j'aimerais a coté de chaque case a cocher, un input text avec la date inscrit dedans....

    Mais c vrai que manipuler 2 recordset dans une meme boucle me semble pas tres evident ....

  9. #9
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Pourquoi 2 recordset ? Je pense qu'il serait plus judicieux d'en utiliser un seul avec une requête SQL sur les deux tables avec une jointure non ?

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    oui mais le problème est que j'utilise le recordset pour lister toute mes formations de ma table formation. Si j'essaye d'ajouter le champs date dans ma requete j'ai desuite un nombre incalculable de formations.. !!!!

  11. #11
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    testes ça :
    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
    <%'----début de la boucle-----------%>
    <%RsTable.MoveFirst
     
    Response.Write "<table>" & chr(10)
    do while not RsTable.eof     
          Response.Write "<tr>" & chr(10)
          Response.Write "    <td>" & chr(10)
          Response.Write RsTable("Formation") & chr(10)
          Response.Write "    </td>" & chr(10)
          Response.Write "    <td>" & chr(10)
          Response.Write "    <input id=""" & RsTable("IDFormation") & """ type=""checkbox"">" & chr(10)
          Response.Write "    </td>" & chr(10)
         Response.Write "    <td>" & chr(10)
         Response.Write "    <input id=""date_" & RsTable("IDFormation")  & " type=""text"" value="">" & chr(10)
          Response.Write "    </td>" & chr(10)
          Response.Write "</tr>" & chr(10)
    RsTable.MoveNext 
    loop
    While Not RsForm.EOF
    Response.Write "<script language=""javascript"">" & chr(10)
    Response.Write " document.getElementById('date_" & RsForm("IDFormation") & "').value='" & RsForm("Date") & "';" & chr(10)
    Response.Write "</script>" & chr(10)
    RsForm.MoveNext
    Wend
    Response.Write "</table>" & chr(10)

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Il ne m'affiche plus les checked

    Mais je crois que la solution est toute proche, merci du coup de main en tout cas

  13. #13
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    While Not RsForm.EOF
    Response.Write "<script language=""javascript"">" & chr(10)
    Response.Write " document.getElementById('" &RsForm("IDFormation")&"').checked=true;" & chr(10) 
    Response.Write " document.getElementById('date_" & RsForm("IDFormation") & "').value='" & RsForm("Date") & "';" & chr(10)
    Response.Write "</script>" & chr(10)
    RsForm.MoveNext
    Wend

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Bonjour !!

    Quand je met les responses Write l'un apres l'autre, j'ai la premiere case de ma formation qui est tout le temps coché et je n'ai toujours rien dans ma date ....

    J'obtiens aussi un message d'erreur dans internet explorer :

    document.getelementbyid(..) a la valeur null ou n'est pas un objet !!!!


  15. #15
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Le javascript est exigeant = il est sensible à la casse donc fait attention
    c'est getElementById et non getelementbyid.
    C'est peut-être un problème de " vérifies en affichant la source de la page.
    tu dois avoir
    ex id="date_1234"
    essaies ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Response.Write "    <input id=""date_" & RsTable("IDFormation")  & """ type=""text"" value="">" & chr(10)

  16. #16
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Enfin ca marche !!!!!!

    C'etait une histoire de guillemets

    voila le 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
    <%'----début de la boucle-----------%>
    <%RsTable.MoveFirst
     
    Response.Write "<table>" & chr(10) 
    do while not RsTable.eof 
    %>
      <%
     
          Response.Write "<tr>" & chr(10) 
          Response.Write "    <td>" & chr(10) 
          Response.Write RsTable("Formation") & chr(10)
          Response.Write "    </td>" & chr(10) 
          Response.Write "    <td>" & chr(10) 
          Response.Write "    <input id=""" & RsTable("IDFormation") & """ type=""checkbox"">" & chr(10) 
    	  Response.Write "    </td>" & chr(10) 
    	  Response.Write "    <td>" & chr(10) 
          Response.Write "    <input id=""date_" & RsTable("IDFormation")  & """ type=""text"" ""value="">" & chr(10) 
          Response.Write "    </td>" & chr(10) 
          Response.Write "</tr>" & chr(10) 
     
    %>
    <%RsTable.MoveNext 
    loop
    %>
    </table>   
     
    <p>
      <%
    Response.Write "<script language=""javascript"">" & chr(10) 
    do While not RsForm.EOF 
       		Response.Write " document.getElementById('" &RsForm("IDFormation")&"').checked=true;" & chr(10) 
        	Response.Write " document.getElementById('date_" & RsForm("IDFormation") & "').value='" & RsForm("Date") & "' ;"& chr(10)
          RsForm.MoveNext 
    loop
    Response.Write "</script>" & chr(10)
    %>
    Merci Pymn !!

    Vais m'attarder sur l'update now !!! ca promet 8) 8)

  17. #17
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    bon courage

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par Pymm
    Dans ce cas tu rajoutes dans la checkbox un name et une value
    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ... name=""& Rs_formation("id_formation")&"" value="OK" ...
    et
    en traitement après validation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    While Not rs_formation.EOF
      If Request.Form(rs_formation("id_formation"))="OK" Then
         Rs_ajout_pers_form.Addnew
         Rs_ajout_pers_form("id_personne")=...
         Rs_ajout_pers_form("id_formation")=rs_formation("id_formation")
         Rs_ajout_pers_form.Update
      End If
      rs_formation.MoveNext
    Wend
    Là c'est plus que de l'aiguillage vers la réponse
    Peut on ajouter ce code dans le "onclick" du bouton valider ou faut il créer une nouvelle page pour la validation ??

  19. #19
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Non dans les evenements comme le onclick tu n'utilises que du javascript.

    dans ta page, tu as un formulaire du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form name="monform" target="">
    ...
    <input type="submit" name="monbouton" value="Valider">
    </form>
    le target te dit où tu envoies la validation du formulaire
    tu peux l'envoyer sur une autre page ou rester sur la même(renseignes toi sur les valeurs possible du target)

    exemple tu l'envoies sur la même page, voici la structure de ta page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ' Code ASP
    ' Si j'ai validé mon formulaire
    If Request.Form("monbouton")="Valider" Then
       'mon traitement
    End If
    ' Code  HTML
    <head>
    ...
    </head>
    <body>
    ...
    </body>
    Il faut bien faire la distinction entre ASP et Javascript
    Recherche dans les tutoriels pour bien savoir quoi utiliser et a quel moment.
    Par exemple le site :
    www.commentcamarche.com et très bien fait

  20. #20
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    Euh j'ai mis :
    Request.Form("...")
    Mais selon le mode d'envoi des informations c'est peut-être un Request.QueryString("...")

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Filtrer des données selon un certain critère
    Par Sylvain744 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/03/2015, 20h51
  2. Réponses: 2
    Dernier message: 08/07/2014, 09h24
  3. Ajouter des Checkbox dans un TlistView
    Par ATTIA dans le forum Composants VCL
    Réponses: 10
    Dernier message: 01/10/2009, 18h41
  4. Cocher des checkboxes selon le choix utilisateurs
    Par Altaria dans le forum SharePoint
    Réponses: 5
    Dernier message: 30/07/2009, 14h00
  5. [STringGrid] Comment ajouter des CheckBox ?
    Par arkhamon dans le forum Composants VCL
    Réponses: 1
    Dernier message: 23/01/2008, 11h03

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