Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    34

    Come Inviare Selzione Check Box a modiùulo di Update?

    In un moodulo ASP ( VARIA ) richiamo i dati con una query in un recordset e genero una tabella nella quale inserisco 4 valori
    1 contatore (valore non modificabile)
    2 cognome (valore non modificabile)
    3 nome (valore non modificabile)
    4 Selezione ( soggetto a variazione T/F tramite check box)
    quindi una volta eseguita la selzione manuale ( 1 True;2;3;4 False 5;6 True etc.) dovrei inviare i valoiri inseriti nella varie check box al Modulo UPDATE .
    Domanda : come eseguire l'operazione? ovvero senza perdere i valori delel varie opzioni selezionate?
    anche perche nella visualizzazione il valore del campo "SEL" (check Box) risultano tutti False ance s eper prova in alcuni record vi è valore True
    posto il codice finore elaborato:

    <%
    Dim ModID,Cnt_Slzn
    Cnt_Slzn=1
    ModID = Request("Id")
    if ModID = "" then
    ModID = 5
    end if

    MyDB="DBSqdr.mdb"
    Set conn = Server.CreateObject("ADODB.Connection")
    Set rs = Server.CreateObject("ADODB.Recordset")
    conn.Open Application("DBSqdr_ConnectionString")
    dsnpath = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(myDB)

    querysql="select * from Anagrafe where id >=" & ModID

    rs.Open querysql, conn, 3, 3
    rs.movefirst
    %><table width="500" cellspacing="0" border="1"><tr><% ' Crea struttura Tabella
    do while not rs.bof ' Inizia Ciclo elaborazione qry DB
    if rs.Eof = true then ' evita errore di record aggiunto
    exit do
    end if
    Response.Write "<td width ="& 20 &">" : Response.Write Cnt_Slzn : Response.Write "</td>"
    Response.Write "<td width ="& 200 &">" : Response.Write(Rs("Cognome")) : Response.Write "</td>"
    Response.Write "<td width ="& 200 &">" : Response.Write(Rs("Nome")) : Response.Write "</td>"
    %> <td width = 20><input type="checkbox" name="Sel" value="<%=rs("Cnvct")%>"></td> <%
    Response.Write "</tr>"
    Cnt_Slzn = Cnt_Slzn + 1
    Rs.Movenext
    loop
    Rs.MoveFirst
    %>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Ma se assegni a tutti i checkbox il name="Sel" come speri di ricevere i dati?
    Devi dargli un nome che sia legato con la chiave univoca del record.... e recuperare i valori scorrendo l'array
    codice:
    For Each item in request.form
      nome = Item
      valore = request.form(Item)
      ' .... esamina il nome ed estrai la parte che costituisce la chiave 
      ' .... eccetera
    Next
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    34
    Scusa ma non mi è chiara la cosa
    mi sa che dovrai guidarmi per manina
    non ho inteso se il ciclo for..each deve sostituire il ciclo Do While
    se all'interno o prima
    e come nel ciclo for ... Each la check box Sel acquisisce valore T/F

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Come Inviare Selzione Check Box a modiùulo di Update?

    Scusa se ho semplificato qualcosa ma non riuscivo a leggerlo

    codice:
    <%
    Dim ModID,Cnt_Slzn
    Cnt_Slzn=1
    ModID = Request("Id")
    if ModID = "" then
      ModID = 5
    end if
    
    MyDB="DBSqdr.mdb"
    Set conn = Server.CreateObject("ADODB.Connection")
    Set rs = Server.CreateObject("ADODB.Recordset")
    conn.Open Application("DBSqdr_ConnectionString")
    dsnpath = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(myDB)
    
    querysql="select * from Anagrafe where id >=" & ModID  
    
    rs.Open querysql, conn, 3, 3
    rs.movefirst
    %>
    <table width="500" cellspacing="0" border="1"><tr>
    <%
    do while not rs.bof 
      if rs.Eof = true then
        exit do
      end if
    %>
      <td width="20"><%=Cnt_Slzn%></td>
      <td width="200"><%=Rs("Cognome")%></td>
      <td width="200"><%=Rs("Nome")%></td>
      <td width="20"><input type="checkbox" name="Sel_<%=Rs("id")%>" value="<%=rs("Cnvct")%>"></td>
    </tr>
    <%
      Cnt_Slzn = Cnt_Slzn + 1 
      Rs.Movenext
    loop
    Rs.MoveFirst
    %>
    Programma che riceve:
    codice:
    For Each item in request.form
      nome = Item
      valore = request.form(Item)
      if lef(nome,4) = "Sel_" then ' ho trovato uno dei checkbox!
         tuo_id = mid(nome,5)
         ' adesso hai l'ID ed il valore... fanne buon uso
      end if
    Next
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    34
    scuse tu piuttostoi se ho inserito il codice " elaborato" necessario all'interfaccia all'utente
    cmnq grazie per laver corretto e postato

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    34
    scus BR1, ma prtp non mi gira!
    allego un screnshot per caopitre com ho strutturato la pagina VARIA, nel qual eil codice con il ciclo do...while viene inserito in un modulo di invio dati


    il prblema che chiamnddo la pagina Salva_dati (con il Btn del modulo) ho errore HTTP 500 o cmnq , anche provando in codice, non ho il ritoprno dei dati inseriti nella pagina VARIA
    scusa non ho mai specificato
    i Moduli sono gestiti in FrontPage2003
    Immagini allegate Immagini allegate

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    34
    Risolto!
    c'era un errore di battitura nel ciclo For ... Each posta da BR1
    mancava la letter "t" nella funzione left posto la correzione

    For Each item in request.form
    nome = Item
    valore = request.form(Item)
    if left (nome,4) = "Sel_" then ' ho trovato uno dei checkbox!
    tuo_id = mid(nome,5)
    ' adesso hai l'ID ed il valore... fanne buon uso
    end if
    Next


    grazie ancora!

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da golfmike
    scus BR1, ma prtp non mi gira!
    allego un screnshot per caopitre com ho strutturato la pagina VARIA, nel qual eil codice con il ciclo do...while viene inserito in un modulo di invio dati


    il prblema che chiamnddo la pagina Salva_dati (con il Btn del modulo) ho errore HTTP 500 o cmnq , anche provando in codice, non ho il ritoprno dei dati inseriti nella pagina VARIA
    scusa non ho mai specificato
    i Moduli sono gestiti in FrontPage2003
    Ci ho messo diversi minuti per leggerlo... ti prego, fai piu' attenzione a cio' che scrivi, rileggi, non c'e' fretta, non sono sempre qui che aspetto i tuoi post.

    Non ho idea di cosa tu ci abbia messo nella pagina Salva_dati, l'errore 500 ha tante di quelle cause da poterci scrivere interi trattati.

    Posta il codice della pagina, lo screenshot non serve.

    ciao

    Edit: ci siamo incrociati, lieto che tu abbia risolto.
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.