Uscita dal Sito

  • Creatore Discussione Creatore Discussione matador
  • Data di inizio Data di inizio

matador

Utente Attivo
26 Nov 2011
68
0
0
Vorrei andare a Modificare quando un Utente esce dal Sito, come posso fare?
Facendo alcune ricerche, ho trovato questo Code, anche se non funziona...

Codice:
<script language="javascript"> 
<body onunload="i=new Image();i.src='index.php?pagina=modifica_al_database';"> 
</script>

Grazie 1000.
 
Eseguire del codice PHP quando un utente esce dal sito è quasi impossibile. L'unico modo è usare l'evento onbeforeunload (non onunload), ma anche in questo caso non saresti sicuro che il codice sia stato eseguito:
  • potrebbe non essere eseguito per ragioni di sicurezza;
  • potrebbe non essere eseguito perché l'utente ha Javascript disattivato;
  • potrebbe non essere eseguito perché la richiesta AJAX, per un motivo qualunque, fallisce;
Cosa stai cercando di fare? Forse c'è un modo migliore per ottenere lo stesso risultato.
 
In poche parole volevo "migliorare/modificare" la Chat (In Stile Facebook) della vostra guida sul Sito.
E rendere in tempo reale se un utente e' Online o meno grazie ad una variabile dal DataBase..
Se l'utente esce dal Sito, glie' la setto a 0... C'e' un'altro modo magari per farlo? Grazie :)

PS: Ahn un'altro problema che ho alla Chat, e che mi blocca il Sito, in poche parole non mi fa' scorrere in basso lo Scroll, visualizzando per forza quindi meta' Sito... Strano, non riesco a capire S:
 
Quello che tu vuoi fare viene effettuato tramite timeout: ad ogni aggiornamento della pagina modifichi il campo last_activity del database, impostandolo allo UNIX time corrente. Inoltre, imposti come "offline" tutti gli utenti il cui campo last_activity sia stato aggiornato più di 15 minuti fa (o meno).

Il problema è che la chat funziona tramite AJAX, quindi dovresti modificare il campo ad ogni messaggio inviato/letto, e anche così l'utente potrebbe rimanere inattivo per diverso tempo senza essere necessariamente offline. È uno scenario un po' complesso.
 
Premetto che GLIE' LA è la prima volta che lo vedo, davvero sconcertante.
Veramente neanche facebook è molto preciso in quanto utilizza lo stesso metodo che utilizzano quasi tutti i siti che visualizzano gli utenti online (cioè quello che alex ti ha spiegato). Però, come puoi notare, effettua un controllo ogni volta che apri la finestrella per la chat.
Intendo dire che, se stai chattando con due utenti avrai una finestra della chat abbassata e una alzata, quando torni sull'altra facendola aprire ci sarà un controllo per vedere se l'utente è online. In questo modo tu sai di preciso se l'utente che stai per contattare è on o off.
 
Capisco, poi ho notato che cmq se il Player non e' Online (forse lo riconosce grazie alla sessione 'username'), gli invia lo stesso il Mex, indicando data e ora... solo che continua a funzionare male, inviando i messaggi in ritardo. Vedo cosa posso fare poi vi faccio sapere. Sorry per "GLIE' LA", veramente non se' puo' legge ._. ho scritto in dialetto.. Grazie cmq! :fonzie:
 

Discussioni simili