Controllo Unload (il ritorno :))

Ciao

pochi giorni fa avevo chiesto come poter controllare l'evento unload di una pagina Php.

Grazie a LonelyWolf per la risposta, ho messo in pratica il suo suggerimento usando un JS......che purtroppo non riesco a controllare a dovere :(

Dall'inizio! :) Ho una pagina che estrae casualmente un record,in base al record uscito raccolgo poi un input utente e lo invio tramite Submit per poterlo archiviare, quindi torno nuovamente a estrarre casualmente un'altro record e via dicendo.

Per non fare estrarre un record gia' uscito, ho pensato di mettere a 1 un campo Flag sul Db di quei record gia' sortiti, e fino a qui tutto bene. Ma quando l'utente lascia la pagina chi mi riporta i Flag del Db a 0 ???

Ecco che dovrei controllare l'evento Unload, ma non riesco a farlo se faccio il Submit per la raccolta dell'input utente, perchè ogni volta la pagina viene lasciata e quindi i Flag azzerati, ma non posso farlo (a quanto pare) nemmeno se processo il Submit sulla stessa pagina, in quando per un "vizio" probabilmente legato alla caratteristica del Submit, ad ogni sua pressione, almeno per una attimo il Focus della pagina viene perso, e questo non mi sta bene in quanto ancora,azzero immancabilmente i flag.

Come posso fare???

Non è magari possibile inserire un controllo sul tempo di unload pagina?

Nel senso di far intervenire l'evento unload (parlo semre di JS) se sono passati piu' di Tot secondi ?

Spero di essermi spiegato, perchè mi rendo conto che è un pò difficile da dire :)

Grazie

Paolo

inviato 9 anni fa
antares
X 0 X

secondo me non puoi affidare lo stato del tuo database ad un javascript, è troppo pericoloso ed inpredicibile... dovresti trovare un'altra strada, che non dipenda dalla chiusura del browser

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Spero di aver capito il problema. Potresti resettare tutti i flag prima di iniziare l'estrazione dei record, da un altra pagina php che finita la sua operazione effettua un redirect alla pagina di estrazione record.

Quindi prima della prima estrazione casuale, e solo in questo caso, vengono resettati tutti i flag del database.

risposto 9 anni fa
Tro4
Tro4
1
X 0 X

Tro mi sono perso :)

L'idea di farlo prima non sarebbe male, ma chi mi dice di farlo???

Oppure intendi dire che all'apertura della pagina azzero i flag piuttosto che alla chiusura?

Ad ogni modo per ora sono forzatamente fermo a causa di un malfunzionamento nella connessione al DB (se ti va di leggere nella sezione Database ci sono i miei post), ma appena riesco a rimettere tutto in sesto prendo in considerazione la tua idea a meno che non mi spieghi meglio nel caso non abbia capito :)

Grazie Tro, a presto

Paolo

risposto 9 anni fa
antares
X 0 X

Scusami ma sono talmente preso dal lavoro che l'italiano ormai è diventato un optional.... cmq sì, intendevo proprio azzerare i flag all'apertura della pagina, invece che alla chiusura.

risposto 9 anni fa
Tro4
Tro4
1
X 0 X

Ok Grazie

penserò di prendere in considerazione la cosa appena riesco a fare funzionare tutto, ma un pò ci ho pensato e credo che lo stesso problema che ho alla chiusura, lo ho all'apertura.

Quando premo il pulsante Submit per raccogliere l'input utente prima di estrarre un nuovo record, la pagina viene lasciata (anche fosse solo per un momento) e quindi presumo i flag si azzerino, come del resto ho gia' provato per l'evento Unload.

Vabbeh appena potrò farò ulteriori prove.

Grazie ancora

Paolo

risposto 9 anni fa
antares
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda