Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27

Discussione: ElseIf non rispettata.

  1. #1
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870

    ElseIf non rispettata.

    Ciao ragazzi.
    Perchè di tutte queste condizioni solo quella scritta in rosso non estrae nulla dalla tbl del database, mentre tutte le altre funzionano bene?:
    codice:
    if reg = 0 and prov = 0 and CP = "TUTTI" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC") 
    
    
    elseif STATO <> "TUTTE" and reg <> 0 then
    Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.id_reg = RSist.id_reg WHERE Scorr.stato = '"&stato&"' AND Scorr.ID_reg = "&reg&" ORDER BY Scorr.regione") 
    
    
    elseif reg <> 0 and prov <> 0 and com <> "TUTTI" then
    Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.ID_prov = RSist.ID_prov WHERE Scorr.regione = '"& regione &"' ORDER BY Scorr.regione") 
    
    
    elseif reg <> 0 and prov <> 0 then
    Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.id_prov = RSist.id_prov WHERE Scorr.ID_prov = "& prov &" ORDER BY Scorr.regione") 
    
    elseif STATO <> "TUTTE" and prov <> 0 then
    Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.id_prov = RSist.id_prov WHERE Scorr.stato = '"& stato &"' AND Scorr.ID_prov = "&prov&" ORDER BY Scorr.regione") 
    
    
    
    elseif STATO = "TUTTE" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC")    
    
     
    elseif STATO <> "TUTTE" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_stato = '"& STATO &"' ORDER BY regione ASC") 
    
    elseif reg <> 0 then
    Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_reg = "& reg &" ORDER BY reg ASC") 
    
    elseif prov <> 0 then
    Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_prov = "& prov &" ORDER BY reg ASC") 
    
    elseif com <> "TUTTI" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_com = '"& com &"' ORDER BY reg ASC") 
    
    end if

  2. #2
    Utente di HTML.it L'avatar di heroes3
    Registrato dal
    Aug 2001
    Messaggi
    2,483
    secondo me dovresti indentrarli per facilitare la leggibilità

  3. #3
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Originariamente inviato da heroes3
    secondo me dovresti indentrarli per facilitare la leggibilità
    scusa non ho capito, che vuol dire 'indentrarli' ?

  4. #4
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    ma ci entra nella condizione o la salta?

    indentato:
    codice:
    if situazione then
       Response.write("blablabla")
       if sonasega then
          Response.write("blalblalba")
       end if
    end if
    
    non indentato:
    if situazione then
    Response.write("blablabla")
    if sonasega then
    Response.write("blalblalba")
    end if
    end if
    capirai che è molto + leggibile

  5. #5
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Non lo sapevo, grazie... certo che è più leggibile... il problema è che se inserisco questa condizione:
    codice:
    elseif STATO = "TUTTE" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC")
    mi crea un contrasto con tutte le altre oltre a non estrarre nulla...

  6. #6
    Utente di HTML.it L'avatar di heroes3
    Registrato dal
    Aug 2001
    Messaggi
    2,483
    codice:
    if reg = 0 and prov = 0 and CP = "TUTTI" then
    	Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC") 
    else
    	if STATO <> "TUTTE" and reg <> 0 then
    		Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.id_reg = RSist.id_reg WHERE Scorr.stato = '"&stato&"' AND Scorr.ID_reg = "®&" ORDER BY Scorr.regione") 
    	else
    		if reg <> 0 and prov <> 0 and com <> "TUTTI" then
    			Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.ID_prov = 		RSist.ID_prov WHERE Scorr.regione = '"& regione &"' ORDER BY Scorr.regione") 
    		else
    			if reg <> 0 and prov <> 0 then
    				Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON Scorr.id_prov = RSist.id_prov WHERE Scorr.ID_prov = "& prov &" ORDER BY Scorr.regione") 
    			else
    				if STATO <> "TUTTE" and prov <> 0 then
    					Set rs = DBconn.Execute("SELECT DISTINCT RSist.id_prov, RSist.id_reg, Scorr.* FROM Scorr INNER JOIN RSist ON  Scorr.id_prov = RSist.id_prov WHERE Scorr.stato = '"& stato &"' AND Scorr.ID_prov = "&prov&" ORDER BY Scorr.regione") 
    				else
    					if STATO = "TUTTE" then
    						Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC")
    					else
    						if STATO <> "TUTTE" then
    							Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_stato = '"& STATO &"' ORDER BY regione ASC") 
    						else
    							if reg <> 0 then
    								Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_reg = "& reg &" ORDER BY reg ASC")
    							else
    								if prov <> 0 then
    									Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_prov = "& prov &" ORDER BY reg ASC") 
    								else
    									if com <> "TUTTI" then
    										Set rs = DBconn.Execute("SELECT * FROM Scorr WHERE ID_com = '"& com &"' ORDER BY reg ASC") 
    
    									end if
    								end if
    							end if
    						end if
    					end if
    				end if
    			end if
    		end if
    	end if
    end if

  7. #7
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Senz'altro è leggibile, ma il problema rimane... quando
    codice:
    if STATO = "TUTTE" then
    Set rs = DBconn.Execute("SELECT * FROM Scorr ORDER BY regione ASC")
    non estrae nessun records...

  8. #8
    heroes3, non confondere

    codice:
    IF condizione1 THEN
       '
    ELSEIF condizione2 THEN
       '
    ELSE
       '
    END IF
    con

    codice:
    IF condizione1 THEN
       '
    ELSE
       IF condizione2 THEN
          '
       ELSE
          '
       END IF
    END IF

  9. #9
    Utente di HTML.it L'avatar di heroes3
    Registrato dal
    Aug 2001
    Messaggi
    2,483
    ops

    cannato in pieno hai ragione optime

    solo che mi capita che spesso molti utilizzano elseif in modo non corretto

    chiedo venia

  10. #10
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    up

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.