Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Errore invio mail con like

    Sto provando ad inviare una mail tramite cdo... devo filtrare le email a cui inviare la newsletter e lo faccio con un form dove posso specificare la condizione like del campo email...
    purtroppo sembra non funzionare bene, infatti mi da errore

    La quesry che viene passata è la seguente:

    Query eseguita:
    SELECT * FROM Mail WHERE CatID =2 AND Email LIKE 'b*' ORDER by Email asc

    e mi sembra sia corretta (il db è Acces '97).

    L'errore il seguente:

    ADODB.Recordset error '800a0bcd'

    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.

    /interna/newsletter/mail_invia_CDO.asp, line 68


    l'errore mi viene dato nel seguente punto:

    ' paginazione
    mypage = Request("pg")
    if mypage="" then mypage = 1

    strPageSize = 3
    rs.cachesize = strPageSize
    rs.pagesize = strPageSize
    rs.absolutepage = mypage <------ questo punto
    maxpages = CInt(rs.pagecount)

    che è dove definisco la paginazione degli invii per evitare che il server di posta mi blocchi le mail (cosa che sembra fare lo stesso anche con questo sistema, ma va bhe...questo è un altro problema!)

    Sapete darmi qualche indicazione in merito?
    Grazie.

  2. #2
    il like di solito si usa con il % per specificare che al posto del% ci può essere qualsiasi cosa...

    cmq la query non è scorretta...non ci sono record semplicemente

    (io la farei così:
    codice:
    SELECT * FROM Mail WHERE CatID =2 AND Email LIKE 'b%' ORDER by Email asc
    )
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  3. #3
    Ho provato la select direttamente da DB e sembra che vada bene (col % non va, penso dipenda dal db, su Sql si usa il %, ma su Access mi sa che si deve usare l'*)...e inoltre tira fuori dati, mentre dalla pagina da quell'errore....
    Qualche idea?

    Grazie.

  4. #4
    Non è che (ma è solo un'idea) il metodo

    absolutepage

    (o è una proprietà.....?) dell'oggetto recordset (il tuo rs) si comporta a seconda di come l'hai definito nelle costanti ADO . . . perchè anche a me tutto il resto sembra corretto, a parte l'uso del "like" su cui concordo con Shagrat?
    E' nato www.lombardiamotori.it

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

  5. #5
    Già...l'SQL standard dice che per il like ci vuole il % ma access vuole per davvero il *...

    cmq pensavo anche io...comunque quell'errore salta fuori quando il record non esiste o si è superato l'EOF
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  6. #6
    Hai messo un controllo di fine file nell'estrazione e stampa dei dati dal recordset?
    E' nato www.lombardiamotori.it

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

  7. #7
    Rieccomi, scusate ma in questi giorni non ho potuto collegarmi...

    Allora,

    Non è che (ma è solo un'idea) il metodo absolutepage (o è una proprietà.....?) dell'oggetto recordset (il tuo rs) si comporta a seconda di come l'hai definito nelle costanti ADO . . .
    non ne ho idea... non so neanche come si fa a definirlo nelle costanti ado! :master:

    Poi...vi riporto parte del codice della pagine:
    codice:
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("db/database.mdb"),1,3
    
    strSQL = "SELECT * FROM Mail WHERE CatID =2 AND Email LIKE 'b*' ORDER by Email asc"
    
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open strSQL,Conn, 1, 3
    
    mypage = Request("pg") 
    if mypage="" then mypage = 1 
    
    strPageSize = 3
    rs.cachesize = strPageSize 
    rs.pagesize = strPageSize 
    rs.absolutepage = mypage  <------ questo punto 
    maxpages = CInt(rs.pagecount)
    però il fatto è che la quesry estrae dati...provandola sul db mi tira fuori diversi dati...

    Qualcosa in mente? va specificato l'absolutepage nel file adovbs.inc e incluso in questa pagina? Io non l'ho proprio incluso...ma nel mio adovbs.inc mi sembra non ci sia definito absolutepage... :master:




  8. #8

  9. #9
    Nessuna idea in merito?

    Io ancora non sono riuscito a risolverlo questo problema!

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.