Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    soluzione con global.asp

    Salve a tutti,
    ho una pagina asp, dove seleziono tutte le offerte in scadenza per oggi, aggiorno il database scrivendo scaduto, e mando una mail all'amministratore con i nomi delle offerte scadute.

    Questo però avviene, ogni volta che accedo volutamente a questa pagina, ma io vorrei che questo accadesse ogni giorno, indipendentemente se accedo o meno a questa pagina.

    Allora avevo pensato di inserire il codice nel global.asa di questo tipo:

    pseudo
    codice:
    ogni volta che un'utente si collega
    se contatore = 0
    apri il db, seleziona, aggiorna, costruisci la mail
    manda la mail
    contatore = 1
    chiudi e pulisci tutto
    dite che potrebbe funzionare?
    qualche altro suggerimento?

    grazie, ciao.

  2. #2
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Se il server è tuo prevedi un'operaizone pianificata, altrimenti:

    http://www.cronservice.co.uk/new/index.php

  3. #3
    fai prima a mettere nel session_onstart (o come se chiama)

    1) apro il db, leggo l'ultima data di invio notifiche
    2) se data<>oggi, invio notifiche e aggiorno il campo nel db
    3) chiudo il db


    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    si, anche se il servizio sembra professionale, purtroppo si paga... e mmo cco sta crisi...
    se la strada del global.asa è quella giusta, volevo fare un'ulteriore precisazione:

    se il db è grande, e i records da filtrare sono assai, questo appesantimento potrebbe influire sulla velocità di navigazione del primo visitatore, che potrebbe abbandonare il sito?

  5. #5
    Originariamente inviato da DarioMarco
    si, anche se il servizio sembra professionale, purtroppo si paga... e mmo cco sta crisi...
    se la strada del global.asa è quella giusta, volevo fare un'ulteriore precisazione:

    se il db è grande, e i records da filtrare sono assai, questo appesantimento potrebbe influire sulla velocità di navigazione del primo visitatore, che potrebbe abbandonare il sito?
    quante email devi mandare? migliaia? allora non è la soluzione.. una? va benissimo.. decine? se pò fa..
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  6. #6
    una sola email al giorno con il riassunto di tutte le offerte scadute.
    ho provato a mettere lo script in una pagina, sembra che non gravi assai, hai ragione.

    dal tronde ho fatto alcune prove nel file global.asa, e volevo mettere lo script in Application_onEnd, ma forse non funziona:

    codice:
    Sub Application_OnStart
      Application("prova") = 0
    End Sub
    
    Sub Application_OnEnd
      Application("prova") = 1
    End Sub
    mi sono creato un'altra pagina con su scritto Reponse.write("stato= "&Application("Prova"))
    in teoria quando vado a fare il log-in la variabile dovrebbe risultare 0 , mentre quando faccio il log-out, dovrebbe essere 1, ma la variabile è sempre 0.
    non capisco, magari voi che ne sapete sicuramente più di me sapreste dirmi...

    Grazie, ciao.

  7. #7
    l'application_onEnd viene richiamata quando qualcuno blocca o riavvia IIS. Te dovevi guardare il Session_onStart/onEnd
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #8
    thnx, ma volevo usare l'application_onEnd in modo tale che non gravasse sul peso della navigazione, che ne dici???

    e poi posso impostare un contatore?
    se si, come devo fare per azzerarlo?

  9. #9
    Originariamente inviato da DarioMarco
    thnx, ma volevo usare l'application_onEnd in modo tale che non gravasse sul peso della navigazione, che ne dici???

    e poi posso impostare un contatore?
    se si, come devo fare per azzerarlo?

    Allora:

    

    Application_OnStart Event

    The Application_OnStart event occurs before the first new session is created (when the Application object is first referenced).

    This event is placed in the Global.asa file.

    Note: Referencing to a Session, Request, or Response objects in the Application_OnStart event script will cause an error.

    Application_OnEnd Event

    The Application_OnEnd event occurs when the application ends (when the web server stops).

    This event is placed in the Global.asa file.

    Note: The MapPath method cannot be used in the Application_OnEnd code.
    quindi: l'application non mi pare che vada bene a te.. tu devi fare un contatotre? e cosa dovrebbe fare questo contatore? che poi dovresti implementarlo a livello di session_onstart.. ma tu a livello di session_onstart dovresti solo fare una query che ti dica se devi o meno inviare le emails.. se devi, le invii e aggiorni il database.. l'utente che se becca l'invio dell'email avrà un ritardo piu del solito di un secondo e non dovrebbe avere problemi
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  10. #10
    no, spe...
    il primo utente che nell'arco della giornata si logga sul mio sito (ma meglio se quando fa il log-out), lo script deve madare una mail all'amministratore, dopodichè, non ne deve mandare più, quindi lo pseudo codice sarebbe questo:

    pseudo
    codice:
    contatore = 0
    loggati
    se contatore <> 1 allora
    collegati al db
    seleziona le offerte in scadenza
    costruisci la stringa
    manda la mail
    contatore = 1
    chiudi/pulisci
    se ore = 00.00 allora contatore = 0 // alla mezzanotte azzera il contatore ;)
    che mi consigli???

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.