Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975

    Passare valore da listbox

    Scusate per la banalità, ho una listbox che si popola tramite una funzione in js; i dati della seconda listbox vengono restituiti regolarmente quando si seleziona un campo dalla prima listbox.
    il problema è che vorrei far passare tramite un submit il valore restituito dalla seconda listbox ad una asp dove faccio una query e scrivo così:
    nella asp con le listbox:
    codice:
    <form name="selezione" method="post" action="for_name.asp">
    il form della listbox si chiama 'name' e scrivo così nella asp della query:
    codice:
    name = Request.form("name")
    response.write name
    
    Dim str 
    str = Replace(Request("name"), "_", " ") 
    
    Dim ConnDown
    Set ConnDown=Server.CreateObject("ADODB.Connection")
    ConnDown.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath(path&"load.mdb")
    Dim SQLDown,RECDown
    
    SQLDown="SELECT * FROM Lista WHERE nome = '"&str&"' order by ID asc" 
    Set RECDown=ConnDown.Execute(SQLDown)
    con response.write name mi viene restituito:
    /for_name.asp?ID_Q = 5
    dovrebbe invece restituire il valore restituito nella seconda listbox.
    dove sbaglio?
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    E' evidente che il form iniziale è un bel po' incasinato...

    Roby

  3. #3
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975
    Originariamente inviato da Roby_72
    E' evidente che il form iniziale è un bel po' incasinato...

    Roby
    In che senso scusa?
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

  4. #4
    Utente di HTML.it L'avatar di SPEED78
    Registrato dal
    Jan 2003
    Messaggi
    358
    allora se non ho capito male tu hai una select del tipo:
    <select name='nome_select'>
    <option value="">seleziona</option>
    <option value="ciao">ciao</option>
    <option value="lunedì">lunedì</option>
    </select>
    per recuperare il dato non devi far alreo ceh nella pagina di richiamo fare
    valoreselect=request.form("nome_select")

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se la request.form ti ritorna quella stringa evidentemente c'è qualcosa "a monte" che non funziona adeguatamente...

    Roby

  6. #6
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975
    Originariamente inviato da Roby_72
    Se la request.form ti ritorna quella stringa evidentemente c'è qualcosa "a monte" che non funziona adeguatamente...

    Roby
    sicuramente è così, posto il code completo:
    codice:
    <script language="JavaScript" type="text/JavaScript"> 
    <!-- 
    function jumpMenu(targ,selObj,restore){ //v3.0 
    eval(targ+".location='"+selObj.options.value+"'"); 
    if (restore) selObj.selectedIndex=0; 
    } 
    //--> 
    </script> 
    <form name="selezione" method="post" action="for.asp"> 
    <% 
    pagina = request.servervariables("path_info") 
    ID_tab = request.querystring("ID_tab") 
    
    if len(ID_tab) > 0 and isnumeric(ID_tab) then 
    id = clng(ID_tab) 
    else 
    id = 0 
    end if 
    
    set conn = server.createobject("adodb.connection") 
    conn.open "DRIVER={Microsoft Access Driver (*.mdb)};" &_ 
    "DBQ="& Server.MapPath("db.mdb") 
    sql = "select * from tab1 order by acronimo" 
    set rs = conn.execute(sql) 
    if not rs.eof then 
    %> 
    <select name="tabella1" onChange="jumpMenu('self',this,0)"> 
    <option value="<%=pagina%>?id_tab=0">Selezionare</option> 
    <% do until rs.eof %> 
    <option value="<%=pagina%>?id_tab=<%=rs("ID_tab")%>"<% if rs("ID_tab") = id_tab then %> selected<% end if %>><%=rs("acronimo")%></option> 
    <% 
    rs.movenext 
    loop 
    end if 
    %> 
    </select> 
    <% 
    rs.close 
    set rs = nothing 
    if ID_tab > 0 then 
    sql = "select ID_tab, acronimo from tab1 where ID_tab = " & ID_tab & " group by acronimo, ID_tab"
    set rs = conn.execute(sql) 
    if not rs.eof then
    %>
    
    <select name="name" id="name">
    <% do until rs.eof %>
    <option value="<%=pagina%>?id_tab=<%=rs("ID_tab")%>"<% if rs("ID_tab") = id_tab then %> selected<% end if %>><%=rs("cognome")%></option> 
    <% 
    rs.movenext 
    loop 
    end if 
    %>
    </select>
    <%
    rs.close 
    set rs = nothing 
    end if
    conn.close 
    set conn = nothing 
    %><input type="submit" name="Submit" value="Submit"> </p>
    </form>
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

  7. #7
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975
    Allora ho rivisto tutte le righe e la logica dello script ed ho trovato l'errore, così è corretto:
    codice:
    <option value=<%=replace(rs("cognome"), " ", "_")%><%=rs("cognome")%> </option>
    cioè quando invio alla asp con la query ciò che ho visualizzato nella seconda listbox mi restituisce il valore del campo del form; il problema è che non distingue per ID e mi estrae tutti i record di quel 'cognome' e non quello apparso nella seconda listbox... sarà la query o il passaggio tramite il form?
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

  8. #8
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975
    Ho risolto tutto, tranne che questa query che non raggruppa per campo 'condizione', perchè?:
    codice:
    sql = "select condizione, ID, nome from tab1 where ID = " & ID & " group by condizione, ID, nome"
    cioè per record con la stessa condizione invece di raggrupparli, mi visualizza nella seconda listbox come records singoli...
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

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.