Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    E' necessario disporre di un record corrente...

    Buonasera.

    Mi spiegate perchè questo codice va in errore:?

    Tipo di errore:
    ADODB.Field (0x80020009)
    Il record corrente corrisponde all'inizio o alla fine del file oppure è stato eliminato. Per eseguire l'operazione richiesta è necessario disporre di un record corrente.


    codice:
    
    <%
    'Eseguo la query per il mese in corso
    Set objRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT * FROM tbl_incontri "
    SQL = SQL & " WHERE data_prossimo_incontro = "& month(date) &""
    objRS.Open SQL, objconn
    
    if not objrs.eof then
    
    response.write objRS("data_prossimo_incontro")
    
       else
    
    MeseSuccessivo = DateAdd("m", 1, Date())
    
    Set objRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT * FROM tbl_incontri "
    SQL = SQL & " WHERE data_prossimo_incontro = "& month(MeseSuccessivo) &""
    objRS.Open SQL, objconn
    
    response.write objRS("data_prossimo_incontro") 
    
    end if
    
    response.write sql
    
    	   objrs.Close
    	   Set objrs = Nothing
    					
    
    	objConn.Close
    	Set objConn = Nothing
    
    %>

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Hai aperto un recordset dentro un altro con lo stesso nome e nel secondo non hai verificato che contenesse qualcosa...
    Rivedi la logica...

    Roby

  3. #3
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da Roby_72
    Hai aperto un recordset dentro un altro con lo stesso nome e nel secondo non hai verificato che contenesse qualcosa...
    Rivedi la logica...

    Roby
    Grazie per aver risposto; mi spiego meglio.

    La tbl data_prossimo_incontro del db mysql contiene i seguenti records:

    2007-08-11
    2007-09-06
    2007-09-13

    La logica dovrebbe essere:

    - selezionare dalla tbl data_prossimo_incontro tutte le date che corrispondono al mese corrente con month(date);

    - se non ci sono date che contengono il mese corrente (come in questo caso) è necessario spostarsi al mese successivo ed estrarre MeseSuccessivo = DateAdd("m", 1, Date()) che in questo caso è agosto e quindi l' 11-08-2007;

    - ho provato a fare una query con WHERE = '2007-08-11' e il codice funziona...


  4. #4
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Sembra che ci sono riuscito... è possibile ottimizzare questo script?:

    codice:
    <%
    
    'Eseguo la query per il mese in corso 
    
    Set objRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT * FROM tbl_incontri "
    SQL = SQL & " WHERE month(data_prossimo_incontro) = "& month(date()) &""
    objRS.Open SQL, objconn
    
    if not objrs.eof then
    
    While Not objRS.EOF
    
    response.write objRS("data_prossimo_incontro") &"
    "
    
    objRS.MoveNext
    Wend
    
       else
    
    MeseSuccessivo = DateAdd("m", 1, Date())
    
    'Eseguo la query per il mese successivo 
    
    Set objRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT * FROM tbl_incontri "
    SQL = SQL & " WHERE month(data_prossimo_incontro) = "& month(MeseSuccessivo) &""
    objRS.Open SQL, objconn
    
    While Not objRS.EOF
    
    response.write objRS("data_prossimo_incontro") &"
    "
    
    objRS.MoveNext
    Wend
    
    end if
    
    response.write sql
    
    	objrs.Close
    	Set objrs = Nothing				
    
    	objConn.Close
    	Set objConn = Nothing
    
    %>

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 © 2026 vBulletin Solutions, Inc. All rights reserved.