Certo che si può chiamare una funzione javascript sull'evento onunload, ma ...Originariamente inviato da stiffa
Ragazzi...o in js o in php dovevo pur postarlo....
ho scelto il forum javascript poiche prendo in considerazione l'evento onunload...
Il mio problema e' che su quell'evento e solo su quell'evento devo richiamare una funzione javascript....come posso fare?
... dunque, lo dico anche se lo sai:Originariamente inviato da stiffa
ho provato cosi ma non funzia...
window.onunload=function(){
<?php
$mgt->logoff($sess_id,0);
?>
}
l'evento onunload scatta 'a casa del client', ovviamente, quando l'utente chiude la pagina.
ore:
la pagina, ovviamente, è già completamente caricata ed è stata 'disegnata' sul client dal tuo server php che, quando ha finito di 'disegnarla', aspetta che il client lo richiami per fare qualcos'altro.
quindi:
il codice:
come pensi possa funzionare sul client???Codice PHP:
window.onunload=function(){
<?php
$mgt->logoff($sess_id,0);
?>
}
L'unico approccio che vedo è quello di implementare una funzione ajax sincrona (che aspetta la risposta!) in javascript sul client che, a fronte dell'evento onunload invii la notifica della chiusura al server.
Però c'è un side effect non da poco:
Mettiamo che nel momento in cui il client chiude la pagina e venga scatenato l'evento onunload gli cada la connessione .....
La funzione ajax (sincrona) tenta di comunicare al server la chiusura ma non ci riesce ... e la finestra non si chiude...
Nota: se andr3a è in ascolto ti spiegherà meglio .. io sono un po' negato con le spiegazioni :-)
ciao
Zappa