Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2000
    residenza
    Savona
    Messaggi
    900

    for e do while in conflitto

    Ciao a Tutti,
    Io seleziono una lista di voci menu nella parte superiore del sito, richiamandoli con il ciclo for...next
    <%for i = 1 to 6
    id_menu= rs("id_menu")
    if rs1("id_menu") = id_menu then%>
    <td width=30 align=right>[img]../pics/check.gif[/img]</td><td><font class="linkstop"><%=rs("menu")%></font> </td>
    <%else%>
    <td width=30 align=right></td><td>" class="link2"><%=rs("menu")%> </td>
    <%end if%>
    <%rs.movenext
    next
    %>

    e nella parte centrale del documento faccio un do while per cercare lo sfondo proveniente dall'id_menu, ma mi restituisce solo l'ultimo valore del ciclo for: perchè?
    <%sql="select * from VOCI where ID_MENU="&id_menu
    set rs1=conn.execute(sql)
    %>
    <%=Request.QueryString ("id_menu")%>
    <table cellspacing=0 cellpadding=0 width=720 height=250 align=center border=1 bordercolor=green>
    <tr>
    <%do while rs2.eof=false%>
    <td width=200 background="../pics/<%=rs2("bg_sx")%>.jpg"></td>
    <td width=520 background="../pics/<%=rs2("bg_dx")%>.jpg"></td>
    <%rs2.movenext
    loop%>
    </tr></table>


  2. #2
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    credo che tu debba sostituire quel

    set rs1=conn.execute(sql)

    con

    set rs2=conn.execute(sql)

    cmq nella tua pagina quanti recordset hai? vedo un pò di confuzione con i nomi. rs, rs1, rs2...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2000
    residenza
    Savona
    Messaggi
    900
    Grazie per la risposta, burruchaga. Ma si è trattato solo di un errore di trascrizione. Nella mia pagina, in effetti avevo scritto correttamente rs2; infatti non ricevo nessun errore: soltanto nel do while mi mostra l'ultimo valore del ciclo for. Cosicché mi viene logico pensare che siano due metodi in conflitto tra di loro..
    Ciao!
    dover

  4. #4
    Sposta

    rs.movenext

    dopo la procedura annidata (quindi come ultima istruzione della parte di codice che hai postato), altrimenti legge tutto il recordset e solo alla fine (con l'ultimo record come record corrente) esegue il ciclo while.

    E' nato www.lombardiamotori.it

    www.universocase.it: il primo portale italiano di annunci immobiliari gratuiti e autogestiti!

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2000
    residenza
    Savona
    Messaggi
    900
    Ciao,
    io ho provato a fare l'operazione che mi hai consigliato, ma ho ottenuto sempre errori, così da rinunciare al progetto. Ho creato un sito con frames, e mi sarebbe piaciuto eliminarli, anche a scapito della facilità di caricamento, ma poi ci ho rinunciato: in fondo va bene anche così...
    Grazie a Tutti!

    dover

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.