Visualizzazione dei risultati da 1 a 5 su 5

Discussione: DO Nidificati

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    262

    DO Nidificati

    Ciao, ho dei do nidificati, ma mi da errore dicendo che non sono chiusi. Dove sbaglio?

    ecco il codice
    if Session("login")=2 then
    'N.B.: NON funziona se DB Access è aperto!!!
    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:/Inetpub/wwwroot/GammaDarfo/DB/Gestione.mdb")
    Set objRs = Server.CreateObject("ADODB.Recordset") 'ORDINI
    Set objRs2 = Server.CreateObject("ADODB.Recordset") 'DETTAGLIO ORDINI
    Set objRs3 = Server.CreateObject("ADODB.Recordset") 'LOGIN
    Set objRs = objConn.Execute("SELECT * from Tab_Ordini order by Ord_DataCreaz desc")
    Set objRs2 = objConn.Execute("SELECT * from Tab_Dett_Ordini order by Dett_ID_Ordine desc")
    Set objRs3 = objConn.Execute("SELECT * from Tab_Login order by ID desc")
    'Controllo Che ci siano degli Ordini Inseriti
    if objRs.RecordCount<>0 then
    '----------Ordinamento Colonne---------
    dim ordine
    ordine=request.querystring("ordine")
    sSQL="SELECT * from Tab_Ordini"
    if ordine<>"" then
    sSQL=sSQL&" ORDER BY "&ordine
    'Response.Write (sSQL)
    Set objRs = objConn.Execute(sSQL)
    end if
    'ordina x nomeCampo1
    '--------------------------------------
    %>
    <style>
    TD {FONT-FAMILY:verdana;FONT-SIZE:12;font-style:normal;text-decoration: none;color:ffffff}
    </style>
    <P align=center><FONT size=3>Ordine N.ro <%Response.Write objRs("Ord_Numero")%></FONT></P>
    <table WIDTH="100%" border="1" bordercolor="#006699">
    <tr>
    <td align=center>Creato Il

    </td>
    <td align=center>Numero

    </td>
    <td align=center>ID Cliente

    </td>
    <td align=center>Stato

    </td>
    <td align=center>Pagamento

    </td>
    </tr>
    <%
    'Setto la variabile di appoggio sApp=0
    Session("sApp")= 0
    Do While NOT objRs.EOF
    '-------Formattazione Data Corta-------
    Dim dDataCreaz,sDataCorta
    dDataCreaz=objRs("Ord_DataCreaz")
    'Data gg/mm/aa
    session.LCID = 1040
    sDataCorta=FormatDateTime(dDataCreaz,2)
    'Il 2 corrisponde a vbShortDate
    '--------------------------------------
    'Cliclo per LOGIN
    Do While NOT objRs3.EOF
    'Controllo ID con Ord_ID_Login
    if objRs3("id") = objRs("Ord_ID_Login") then
    'Controllo che sia una Società o un Privato
    if objRs3("Log_Societa") <> "." then
    sLogin=objRs3("Log_Societa")
    else
    sLogin=objRs3("Log_Nome")& " " & objRs3("Log_Cognome")
    end if
    loop
    'sLogin = Nome Cognome oppure Società
    %>
    <tr>
    <td><%Response.Write(sDataCorta)%></td>
    <td>"><%=objRs("Ord_Numero")%></td>
    <td><a href="Login_Singolo.asp?id=<%=objRs("id")%>"><%=sL ogin%></td>
    <td><%Response.Write objRs("Ord_Stato")%></td>
    <td><%Response.Write objRs("Ord_Pag")%></td>
    </tr>
    <%
    objRs.MoveNext
    loop
    '
    %>
    </table>

    <%
    objRs.Close
    Set objRs = Nothing
    objConn.Close
    set objConn = Nothing
    else
    Response.Write("Nessun Ordine Effettuato")
    objRs.Close
    Set objRs = Nothing
    objConn.Close
    set objConn = Nothing
    end if
    else
    Response.Write("Utente Non Autorizzato")
    end if
    TNKS

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Indenta il codice almeno si capisce qualcosa!

    Roby

  3. #3
    Utente bannato L'avatar di javipampa2
    Registrato dal
    Nov 2003
    Messaggi
    210
    if Session("login")=2 then

    if objRs.RecordCount<>0 then

    if ordine<>"" then

    end if
    Do While NOT objRs.EOF
    Do While NOT objRs3.EOF
    if objRs3("id") = objRs("Ord_ID_Login") then

    if objRs3("Log_Societa") <> "." then

    else

    end if
    loop
    objRs.MoveNext
    loop

    else

    end if
    else

    end if

    Mancano un un paio di end if mi pare e un objRs3.movenext?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    262
    tutto a posto grazie

  5. #5
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    in futuro per questo genere di cose ti consiglio di fare una JOIN tra due tabelle,invece di fare 3 diverse query,tenere in memoria 3 diversi recordset e fare 3 cicli annidati per ottenere le corrispondeze tra gli id...(il 3° recordset objrs3 tra l'altro nemmeno lo usi...forse in un pezzo di codice che non hi postato)...

    una cosa del genere...

    codice:
    if Session("login")=2 then 
        session.LCID = 1040 
    		dim ordine 
        ordine=request.querystring("ordine") 
    		
        Set objConn = Server.CreateObject("ADODB.Connection") 
        objConn.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:/Inetpub/wwwroot/GammaDarfo/DB/Gestione.mdb") 
    		
        Set objRs = Server.CreateObject("ADODB.Recordset")
     		
        sSQL="SELECT * FROM Tab_Ordini INNER JOIN Tab_Login ON Tab_Ordini.Ord_ID_Login=Tab_Login.ID" 
        if ordine<>"" then 
          sSQL=sSQL&" ORDER BY "&ordine
    		else
    		  sSQL=sSQL&" ORDER BY Ord_DataCreaz desc"
        end if 		
        Set objRs = objConn.Execute(sSQL)
    
        if objRs.RecordCount<>0 then 'Controllo Che ci siano degli Ordini Inseriti 
            %> 
              <style> 
              TD {FONT-FAMILY:verdana;FONT-SIZE:12;font-style:normal;text-decoration: none;color:ffffff} 
              </style> 
              <P align=center><FONT size=3>Ordine N.ro <%Response.Write objRs("Ord_Numero")%></FONT></P> 
              <table WIDTH="100%" border="1" bordercolor="#006699"> 
              <tr> 
                <td align=center>Creato Il
    
    </td> 
                <td align=center>Numero
    
    </td> 
                <td align=center>ID Cliente
    
    </td> 
                <td align=center>Stato
    
    </td> 
                <td align=center>Pagamento
    
    </td> 
              </tr> 
            <% 
            'Setto la variabile di appoggio sApp=0 
            Session("sApp")= 0 
    				
            Do While NOT objRs.EOF 
              '-------Formattazione Data Corta Data gg/mm/aa ------- 
              Dim dDataCreaz,sDataCorta 
              dDataCreaz=objRs("Ord_DataCreaz") 
              sDataCorta=FormatDateTime(dDataCreaz,2) 'Il 2 corrisponde a vbShortDate 
              '-------------------------------------- 
      				
    
              'Controllo che sia una Società o un Privato 
                if objRs("Log_Societa") <> "." then 
                   sLogin=objRs("Log_Societa") 
                else 
                   sLogin=objRs("Log_Nome")& " " & objRs("Log_Cognome") 
                end if 
                'sLogin = Nome Cognome oppure Società 
              %> 
              <tr> 
              <td><%Response.Write(sDataCorta)%></td> 
              <td>"><%=objRs("Ord_Numero")%></td> 
              <td><a href="Login_Singolo.asp?id=<%=objRs("id")%>"><%=sLogin%></td> 
              <td><%Response.Write objRs("Ord_Stato")%></td> 
              <td><%Response.Write objRs("Ord_Pag")%></td> 
              </tr> 
              <% 
              objRs.MoveNext 
              loop 
              ' 
              %> 
              </table>
     
              <% 
        else 
           Response.Write("Nessun Ordine Effettuato") 
        end if	
    			
        objRs.Close 
        Set objRs = Nothing 
        objConn.Close 
        set objConn = Nothing 	
    else 
        Response.Write("Utente Non Autorizzato") 
    end if



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.