Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630

    select dinamiche con unica tabella

    Carissimi,
    ho un unica tabella nel db access, dove ho questi dati:

    REGIONE
    PROVINCIA
    COMUNE

    CLIENTE
    NUMERO TEL

    vorrei fare una classica select dinamica senza refresh della regione, provincia, comune e a selezione avvenuta visualizzare cliente e numero telefonico, in giro ho trovato molti script che fanno questo ma con tabelle separate (una regione, una provincia etc) mentre i dati regione, provincia, comune li ho in unica tabella, potete indicarmi uno script da adattare alle mie esigenze?
    Grazie
    G.

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    invece di interrogare un'altra tabella interroga la stessa
    il problema dove sta?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    sto provando questo script, che ho modificato per le mie esigenze, ma non mi funziona, dove sbaglio????
    grazie
    codice:
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title></title>
    <script type="text/javascript" language="javascript">
    var estrai_province;
    var id_regione
    
    function cerca_province()
    {
    
    id_regione=document.form.id_regione.options[document.form.id_regione.selectedIndex].value
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
    estrai_province= new XMLHttpRequest();
    estrai_province.onreadystatechange = ricevi_province;
    estrai_province.open("GET", "pronto_intervento.asp?regione="+id_regione, true);
    estrai_province.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
    estrai_province= new ActiveXObject("Microsoft.XMLHTTP");
    if (estrai_province) {
    estrai_province.onreadystatechange = ricevi_province;
    estrai_province.open("GET", "pronto_intervento.asp?regione="+id_regione, true);
    estrai_province.send();
    }
    }
    }
    
    
    function ricevi_province() {
    var province;
    if (estrai_province.readyState == 4) {
    province=estrai_province.responseText;
    
    document.getElementById('provincia').innerHTML = province;
    }
    }
    
    var estrai_comuni;
    var id_provincia
    
    function cerca_comuni()
    {
    
    id_provincia=document.form.id_provincia.options[document.form.id_provincia.selectedIndex].value
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
    estrai_comuni= new XMLHttpRequest();
    estrai_comuni.onreadystatechange = ricevi_comuni;
    estrai_comuni.open("GET", "pronto_intervento.asp?provincia="+id_provincia, true);
    estrai_comuni.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
    estrai_comuni= new ActiveXObject("Microsoft.XMLHTTP");
    if (estrai_comuni) {
    estrai_comuni.onreadystatechange = ricevi_comuni;
    estrai_comuni.open("GET", "pronto_intervento.asp?provincia="+id_provincia, true);
    estrai_comuni.send();
    }
    }
    }
    
    
    function ricevi_comuni() {
    var comuni;
    if (estrai_comuni.readyState == 4) {
    comuni=estrai_comuni.responseText;
    
    document.getElementById('comuni').innerHTML = comuni;
    }
    }
    
    </script>
    </head>
    
    <body>
    <form method="post" action="" name="form">
    <table id="tabella">
    <%nome_form="form"%>
    <tr>
    <td>Regione:</td>
    <td>
    <select name="id_regione" id="id_regione" onChange="cerca_province();">
    <option value="0">Seleziona Regione</option>
    <%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    SQL = "Select DISTINCT REGIONE From COMUNI order by REGIONE asc"
    Set RS = MyConn.Execute(SQL)
    While Not RS.EOF
    %>
    <option value="<%=rs("regione")%>"><%=rs("regione")%></option>
    <%
    RS.MoveNext
    Wend
    RS.Close
    Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    %>
    </select>
    </td>
    </tr>
    <tr>
    <td>Provincia:</td>
    <td id="provincia">
    <select name="id_provincia" onChange="cerca_comuni();">
    <option value="0">Seleziona Provincia</option>
    <%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    SQL = "select * from COMUNI where REGIONE="&request.querystring("REGIONE")&" order by PROVINCIA asc"
    Set RS = MyConn.Execute(SQL)
    While Not RS.EOF
    %>
    <option value="<%=rs("provincia")%>"><%=rs("provincia")%></option>
    <%
    RS.MoveNext
    Wend
    RS.Close
    Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    %>
    </select>
    
    </td>
    </tr>
    
    <tr>
    <td>Comune</td>
    <td id="comuni">
    <select name="id_comune">
    <option value="0">Seleziona Comune</option>
    <%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    SQL = "select * from COMUNI where PROVINCIA="&request.querystring("provincia")&" order by COMUNE asc"
    Set RS = MyConn.Execute(SQL)
    While Not RS.EOF
    %>
    <option value="<%=rs("comune")%>"><%=rs("comune")%></option>
    <%
    RS.MoveNext
    Wend
    RS.Close
    Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    %>
    </select>
    </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    Grazie
    G.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    l'ho modificato così in 3 pagine:

    INDEX.asp
    codice:
    <html>
    <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    <title></title>
    <script type="text/javascript" language="javascript">
    var estrai_province;
    var id_regione
       
    function cerca_province() 
    {
    
    id_regione=document.form.id_regione.options[document.form.id_regione.selectedIndex].value
        // branch for native XMLHttpRequest object
        if (window.XMLHttpRequest) {
            estrai_province= new XMLHttpRequest();
            estrai_province.onreadystatechange = ricevi_province;
            estrai_province.open("GET", "estrai-province.asp?regione="+id_regione, true);
            estrai_province.send(null);
        // branch for IE/Windows ActiveX version
        } else if (window.ActiveXObject) {
            estrai_province= new ActiveXObject("Microsoft.XMLHTTP");
            if (estrai_province) {
                estrai_province.onreadystatechange = ricevi_province;
                estrai_province.open("GET", "estrai-province.asp?regione="+id_regione, true);
                estrai_province.send();
            }
        }
    }
    
         
      function ricevi_province() {   
        var province;       
    	  if (estrai_province.readyState == 4) {	    
    		  province=estrai_province.responseText;
    
    			document.getElementById('provincia').innerHTML = province;
    			 }
    	}
    
    var estrai_comuni;
    var id_provincia
       
    function cerca_comuni() 
    {
    
    id_provincia=document.form.id_provincia.options[document.form.id_provincia.selectedIndex].value
        // branch for native XMLHttpRequest object
        if (window.XMLHttpRequest) {
            estrai_comuni= new XMLHttpRequest();
            estrai_comuni.onreadystatechange = ricevi_comuni;
            estrai_comuni.open("GET", "estrai-comuni.asp?provincia="+id_provincia, true);
            estrai_comuni.send(null);
        // branch for IE/Windows ActiveX version
        } else if (window.ActiveXObject) {
            estrai_comuni= new ActiveXObject("Microsoft.XMLHTTP");
            if (estrai_comuni) {
                estrai_comuni.onreadystatechange = ricevi_comuni;
                estrai_comuni.open("GET", "estrai-comuni.asp?provincia="+id_provincia, true);
                estrai_comuni.send();
            }
        }
    }
    
         
      function ricevi_comuni() {   
        var comuni;       
    	  if (estrai_comuni.readyState == 4) {	    
    		  comuni=estrai_comuni.responseText;
    
    			document.getElementById('comuni').innerHTML = comuni;
    			 }
    	}
    
    </script>
    </head>
    
    <body>
    			<form method="post" action="" name="form">
    			<table>
    				<%nome_form="form"%>
    	<tr>
    		<td>Regione</td>
    		<td>
    			<select name="id_regione" id="id_regione" onChange="cerca_province();">
    				<option value="0">Seleziona Regione</option>
    		<%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    		SQL = "Select DISTINCT REGIONE From COMUNI order by REGIONE asc"
    		Set RS = MyConn.Execute(SQL)
    		While Not RS.EOF
    		%>
    		<option value="<%=rs("regione")%>"><%=rs("regione")%></option>
    		<%
    		RS.MoveNext
    		Wend
    		RS.Close
    		Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    		%>
    			</select>
    		</td>
    	</tr>
    	<tr>
    		<td>Provincia</td>
    		<td id="provincia">
    		</td>
    	</tr>
    	<tr>
    		<td>Comune</td>
    		<td id="comuni">
    		</td>
    	</tr>
    			</table>
    			</form>
    </body>
    
    </html>
    pagina estrai-province.asp
    codice:
    			<select name="id_provincia" onChange="cerca_comuni();">
    			<option value="0">Seleziona Provincia</option>
    <%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    SQL = "select DISTINCT PROVINCIA from COMUNI where REGIONE="&request.querystring("REGIONE")&" order by PROVINCIA asc"
    Set RS = MyConn.Execute(SQL)
    While Not RS.EOF
    	%>
    		<option value="<%=rs("provincia")%>"><%=rs("provincia")%></option>
    	<%
    RS.MoveNext
    Wend
    RS.Close
    Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    %></select>
    pagina estrai-comuni.asp
    codice:
    			<select name="id_comune">
    			<option value="0">Seleziona Comune</option>
    <%
    Set MyConn=Server.CreateObject("ADODB.Connection")
    MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("../../mdb-database/elenco.mdb")
    SQL = "select DISTINCT COMUNE from comuni where provincia="&request.querystring("provincia")&" order by comune asc"
    Set RS = MyConn.Execute(SQL)
    While Not RS.EOF
    	%>
    		<option value="<%=rs("comune")%>"><%=rs("comune")%></option>
    	<%
    RS.MoveNext
    Wend
    RS.Close
    Set RS = Nothing
    MyConn.Close
    Set MyConn = Nothing
    %></select>
    Quando seleziono la regione, mi appare la select PROVINCIA ma vuota senza province.
    Potete aiutarmi?
    Grazie
    G.

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Mancano gli apici....

    ... REGIONE='"&request.querystring("REGIONE")&"' order by ...


    anche nella query seguente.
    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.