Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 22

Discussione: lista record per email

  1. #11
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    e stamattina sì???

    vedi che la notte porta consiglio?

  2. #12
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    34
    Ciao Ragazzi,

    scusate per il ritardo ma quest'oggi non ci sono stato.

    Vi posto il codice anche di nomi.asp

    <%
    set con = server.createobject("ADODB.Connection")
    con.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("db.mdb")
    strsql = "select * from clienti order by nome"
    set rs = con.execute(strsql)
    %>

    <form method="post" action="email.asp">

    <%
    while not rs.eof
    id = rs("id")
    nome = rs("nome")
    email = rs("email")
    %>
    <input type="checkbox" name="record_<%=id%>" value="<%=id%>"> <%=nome%> <%=email%>

    <%
    rs.movenext
    wend
    %>

    <input type="submit" value="Seleziona destinatari">

    </form>

    <%
    rs.close
    set rs = nothing
    con.close
    set con = nothing
    %>

    Nel frattempo provo a fare qualcosa con il ciclo for come hai detto tu referee84.

    Grazie ad entrambi.

  3. #13
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    34
    Ciao Ragazzi,
    scusatemi ma non ci riesco proprio.

    Datemi una mano vi prego.

    Grazie.

  4. #14
    che ne dici di pagina 1 o parte a...
    codice:
    crei il form
    apri il recorset selezionando tutti gli utenti potenziali ricevitori di email...
    crei un "do  while  not recorset_esaurito" in valorizzi qualcosa di simile:
    input_to_be = input to be & rs(nome) & "<checkbox name='"&rs(id)&"' value='"&rs(email)&"'>
    " & vbCrLf
    ...e lo scrivi...
    e pagina 2 o parte b
    codice:
    apri lo stesso recordset dei potenziali ricevitori di email
    crei un do while not recorset_esaurito in cui richiami i valori del form inviato
    ricavati = request.form(rs(id)) & separatore...
    a) poi dalla variabile ricavati ti crei un array e ne controlli i contenuti come vuoi...
    b) volendo puoi mettere un if mentre valorizzi "ricavati" che ti filtra gia i checkbox non flaggati che non ti invieranno come valore l'email ma qualcos'altro...
    basta anche un:
    if request.form(rs(id))=rs(email) then ricavati = ricavati & rs(email) end if
    Scusa le varie imprecisioni... il sonno...
    Grazie sempre di tutto!!!
    Alberto

  5. #15
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    34
    Ciao ^ohiaia^,

    non sono così esperto da riuscire a fare quello che tu mi proponi per cui ti chiederei una cortesia: se puoi modificarmi il codice delle due pagine (nomi.asp e email.asp) .........se non ti pretendo troppo.

    Grazie dell'aiuto.

  6. #16
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    Credo ti stesse suggerendo la stessa cosa mia:

    pagina1.asp:
    codice:
    <%
    set con = server.createobject("ADODB.Connection")
    con.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("db.mdb")
    strsql = "select * from clienti order by nome"
    set rs = con.execute(strsql)
    Dim input_to_be
    %>
    <form name="invio" action="pagina2.asp" method=post>
    <%
    Do while not rs.eof
      input_to_be = input_to_be & rs("nome") & " <input type=checkbox name="&rs("id")&"   value="&rs("email")&">
    "
    rs.movenext
    Loop
    Response.Write (input_to_be)
    %>
    </form>
    pagina2.asp:
    codice:
    <%
    set con = server.createobject("ADODB.Connection")
    con.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("db.mdb")
    strsql = "select * from clienti order by nome"
    set rs = con.execute(strsql)
    Dim strOutlook
    
    'grazie a questo ciclo riesci ad analizzare tutti i checkbox della pagina precedente
    Do while not rs.eof
      'se sono spuntati, ad ogni giro aggiunge il destinatario dentro strOutlook perciò alla fine avrà una stringa con tanti destinatari divisi dal ;
      if not Request.Form("chk_"&rs("id")) = "" then
        strOutlook = strOutlook & Request.Form("chk_"&rs("id")) & ";"
      end if
    rs.movenext
    Loop
    %>
    spero di non aver sbagliato nulla...

  7. #17
    yes referee84 ...

    2 cose da controllare...

    pagina 1...
    in effetti se la pagina è di accesso pubblicopenso sia meglio NON metterei le email dell'utente come value delle checkbox... magari meglio l'id nuovamente...
    così sarebbero visibile semplicemente visualizzando il codice html... ...

    pagina 2...
    bisogna esser sicuri che il valore delle checkbox NON spunatate sia "" e non "false" o qualcos'altro...
    e di conseguenza "coreggere" l'if...
    per quello avevo pensato prima al "if request.form(..) = "quello a cui dovrebbe esser uguale"
    lascia meno spazio ai "frantiendimenti"...

    poi... PGP ieri notte ti ho scritto con un occhio chiuso ed uno mezzo chiuso... però per diventare "esperto" (io non mi reputo tale) le cose è sempre meglio impegnarsi e sbatterci la testa per imparare...

    Grazie sempre di tutto!!!
    Alberto

  8. #18
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    Originariamente inviato da ^ohiaia^
    yes referee84 ...

    2 cose da controllare...

    pagina 1...
    in effetti se la pagina è di accesso pubblicopenso sia meglio NON metterei le email dell'utente come value delle checkbox... magari meglio l'id nuovamente...
    così sarebbero visibile semplicemente visualizzando il codice html... ...
    sono d'accordo, a mio avviso non c'è nemmeno bisogno del value, basta soltanto spuntarla e qui vengo al punto 2 da te sollevato:
    pagina 2...
    bisogna esser sicuri che il valore delle checkbox NON spunatate sia "" e non "false" o qualcos'altro...
    e di conseguenza "coreggere" l'if...
    per quello avevo pensato prima al "if request.form(..) = "quello a cui dovrebbe esser uguale"
    lascia meno spazio ai "frantiendimenti"...
    basta cambiare la IF all'interno del Do/While facendo:
    codice:
    if Request.Form("chk_"&rs("id")) = "on" then
      strOutlook = strOutlook & rs("email") & ";"
    end if
    il controllo sul checkbox spuntato è ON se spuntato e suppongo OFF se non è spuntato, ma dato che a noi serve cercare quelli spuntati...

  9. #19
    ...è che mi ricordavo di vari valori differenti "default" inviati a seconda del browser e del "motore"

    Oltre questo credo che dare un "value" alle checkbox che sia "interno" al db sia un controllo un po' piu sicuro...

    Io, per esempio, a riguardo son quasi paranoico e tendo a mettere controlli ovunque... tra sessioni e hidden...

    Grazie sempre di tutto!!!
    Alberto

  10. #20
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    253
    per quanto riguarda i diversi browser non posso metterci la mano sul fuoco, ma per una cosa piuttosto complessa che serviva a me e che ho testato su IE, in cui se non vado errato in un form c'erano quasi 140 potenziali checkbox spuntabili, ho lavorato esattamente come ora abbiamo proposto al nostro amico e, non sapendo il valore che mi restituiva in caso di check/uncheck dopo qualche prova senza risultato mi so scocciato e mi so fatto fare il response.write del suo valore e, nel caso di checked restituiva "ON".

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 © 2026 vBulletin Solutions, Inc. All rights reserved.