Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    163

    non appare la select in tendina

    <select name="appezzamento" style="width: 355; size=; height:22; color:#000000"1" size="1" >
    <option selected value="<%=rs("nome")%>"><%=rs("nome")%> </option>
    <%
    do while not rs.EOF
    Response.Write ("<OPTION ")
    Response.Write ("value=""" & rs("id") & """>")
    Response.Write (rs("nome"))
    Response.Write ("</OPTION>")
    rs.MoveNext 'va al successivo
    loop 'ritorna sopra
    %>

    Il mio problema è questo, nella tendina , il valore che deve apparire di default come scelta è il recordset che ho evidenziato in rosso. ora mi chiedo perchè se passo come recordset l'id del record me lo stampa in tendina e se passo come visto nello script il valore del nome mi rimane vuoto?
    nonostante poi aprendo la tendina mi ritrovo tutti i valori dei nomi interessati

  2. #2
    Ma ti rimane vuoto solo la option "selected"...giusto?
    Quella rimane vuota perché rs("nome"), è fuori dal ciclo while not rs.eof, e quindi in quel punto non ha valore...
    Quel valore lo recupererai prima di fare il ciclo che estrae i valori e crea la tendina, estraendo il valore attuale dal database, e mettendolo come "selected".

    Non so se mi sono spiegato bene...

    Tu come valore di default vuoi il valore che ha il recordset nel database? Messa così in quel punto dell script, il valore rs("nome") evidenziato in rosso è vuoto...

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    163
    si pero' non mi spiego perche se nel selected metto al posto di nome come recordset id me lo restituisce!!!!!!!

  4. #4
    Non è all'interno magari di un ciclo + grande?

    Prova a mettere tutto il codice.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    163
    <html>
    <head>
    <title></title>
    </head>
    <%server.ScriptTimeOut=6000%>

    <%
    cod=request.querystring("cod")
    id=request.querystring("id")
    sql="SELECT * FROM catasto WHERE id = "&id %>
    <%
    Set rec = Server.CreateObject("ADODB.Recordset")
    Set Rec=conn.Execute(SQL)
    %>
    <body bgcolor="#FFFF99">


    </p>
    <div align="left">
    <table border="1" width="800" id="table1">
    <tr>
    <td width ="222">

    </td>
    <td width="563">
    <p align="center">DATI CATASTALI</td>
    </tr>
    <tr>
    <td width ="222">

    </td>
    <td width="563">
    <table border="0" cellpadding="0" bordercolor="#111111" width="400" id="table5">
    <tr>
    <td width="354">
    <form method="POST" action="catprocess.asp?cod=<%=cod%>&id=<%=id%>" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1">
    <table border="0" cellpadding="0" style="border-collapse: collapse" width="549" id="table6">
    <tr>
    <td width="190"><font size="2">CODICE FISCALE/P.IVA</font></td>
    <td width="359">
    <%response.write rec("cfpiva") %>
    </tr>


    <tr>
    <td width="190"><font size="2">NOME APPEZZAMENTO</font></td>
    <td width="359">
    <%
    Set Connapp = Server.CreateObject("ADODB.Connection")
    Connapp.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../qdc.mdb")
    SQL = "SELECT * FROM appezzamenti"
    Set Rs = Server.CreateObject("ADODB.Recordset")
    Rs.Open SQL, Connapp, 1, 3
    %><select name="appezzamento" style="width: 355; size=; height:22; color:#000000"1" size="1" >
    <option selected value="<%=rs("nome")%>"><%=rs("nome")%></option>
    <%
    do while not rs.EOF
    Response.Write ("<OPTION ")
    Response.Write ("value=""" & rs("id") & """>")
    Response.Write (rs("nome"))
    Response.Write ("</OPTION>")
    rs.MoveNext 'va al successivo
    loop 'ritorna sopra
    %>
    <%
    rs.close
    set rs = nothing
    connapp.close
    set connapp = nothing %>

    </select> </td>
    </tr>
    <tr>
    <td width="190"><font size="2">COMUNE</font></td>
    <td width="359">
    <input type="text" name="comune" size="50" value="<%=rec("comune")%>"></td>
    </tr>
    <tr>
    <td width="190"><font size="2">FOGLIO</font></td>
    <td width="359">
    <input type="text" name="foglio" size="50" value="<%=rec("foglio")%>"></td>
    </tr>
    <tr>
    <td width="190"><font size="2">PARTICELLA</font></td>
    <td width="359">
    <input type="text" name="particella" size="50" value="<%=rec("particella")%>"></td>
    </tr>
    <tr>
    <td width="190"><font size="2">SUPERFICIE IN CENTIARE</font></td>
    <td width="359">
    <input type="text" name="centiare" size="50" value="<%=rec("superficie_ca")%>"></td>
    </tr>

    <tr>
    <td width="190"></td>
    <td width="359"><font color="#000000">
    <input type="submit" value="AGGIORNA DATI" name="B1" style="color: #FFFFFF; font-weight: bold; font-family: Arial Black; background-color: #00CC99"></font></td>
    </tr>
    </table>
    </form>

    </tr>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </div>


    </p>
    <p align="center"></p>

    </body>

    <%
    rec.Close()
    Set Rec = Nothing
    conn.close
    set conn = nothing
    %>
    </html>

  6. #6
    Mah..
    Il primo o l'ultimo record nella tabella "appezzamenti" ha il campo "nome" vuoto?

    Messo così è all'interno di un altro recordset ma ti avrebbe dato il valore mettendo rec("id")..non rs("id").

    L'unica è che estrae il primo record e mette l'id, invece il campo nome è vuoto.

    Ci sarebbe cmq da fare qualche piccola modifica allo script.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    163
    Ti ripeto che mi suona strano il fatto che se al posto di rs nome metto rs id mi restituisce il valore
    ecco perche non riesco ad uscirne fuori!!!!!!

  8. #8
    Prova a mettere anche il codice del file incluso conn_azi.asp

    Giusto per vedere se si accavallano due connessioni al db

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    163
    <%
    Dim Conn
    Set Conn=Server.CreateObject("ADODB.Connection")
    Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath("../qdc.mdb")
    %>

  10. #10
    Ma lo script ti funziona bene anche dopo la tendina?

    Perché la stringa SQL la metti due volte, quindi quando la rimetti dove estrai i dati dalla tabella "appezzamenti", in sostanza elimini la SQL creata inizialmente che estrae i dati dalla tabella "catasto"... questo probabilmente fa sì che ti estragga quel record "id", che probabilmente è un id della tabella catasto e non appezzamenti.

    Comunque dovresti eliminare le righe con le quali rimetti la connessione al database, che tanto è già fatta nel file incluso ed entrambe le tabelle sono nello stesso database.

    Poi cambia la seconda stringa SQL:

    la prima sql="SELECT * FROM catasto WHERE id = "&id lasciala così,

    la seconda:
    SQL = "SELECT * FROM appezzamenti"
    Set Rs = Server.CreateObject("ADODB.Recordset")
    Rs.Open SQL, Connapp, 1, 3

    cambiala in:
    SQL2 = "SELECT * FROM appezzamenti"
    Set Rs = Server.CreateObject("ADODB.Recordset")
    Rs.Open SQL2, Conn, 1, 3

    ho cambiato sia SQL in SQL2 che Connapp in Conn, così sfrutti la connessione che era gia stat creata nell'include...

    poi elimina:

    connapp.close
    set connapp = nothing

    che non servono più

    e vedi cosa ti stampa.

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.