[PHP] Come gestire gli utenti online

Marcolino92

Utente Attivo
6 Nov 2012
28
0
1
Ciao, come da titolo mi trovo in difficoltà anche con questo, ho cercato di risolvere da solo ma ho solo prelevato gli utenti quale la loro "Ultima attività", fosse inferiore a un lasso di tempo prestabilito. Ma non credo sia questa la giusta logica perche ovviamente in quel caso il pallino online viene mostrato anche se l'utente ha chiuso il browser fino appunto al prossimo rinnovo o comunque scadenza del tempo stabilito.

Credo bisogna giocare con le sessioni?
Utilizzo Codeigniter con Benedmuns Libreria per la gestione utente
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
Con socket.io risolvi la gestione della contemporaneità e la gestione live degli utenti in sessione...
In alternativa fai un polling con ajax aggiornando la permanenza agli ultimi x secondi....
 

Marcolino92

Utente Attivo
6 Nov 2012
28
0
1
Ciao, grazie per la tua risposta, potresti farmi un esempio veloce riguardo il polling con ajax?
Si tratta di una normale query che prende gli ultimi collegati in sessione ma che tramite ajax li mette a scaletta aggiornandosi automaticamente?
 

Marcolino92

Utente Attivo
6 Nov 2012
28
0
1
Qualcosa del genere è giusto?

Codice:
<script>
        setInterval(function(){
            $.ajax({
                url: 'URL#####',
                dataType: 'jsonp',
                success: function(result){
                    alert(result);
                },
                error: function(result){
                    alert(result);
                }
            });
        }, 4000);
    </script>

Dove in url inserisco il controller che esegue la query?
 

Marcolino92

Utente Attivo
6 Nov 2012
28
0
1
Mi chiedevo se in termini di utilizzo e buona norma di codice, sia consono usarlo, oppure crea qualche problema riguardo la navigazione, rallentamenti, non so qualcosa di simile ?
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
Mi chiedevo se in termini di utilizzo e buona norma di codice
Partendo dalla tua logica no!
Le operazioni sul DB le fa il model, il controller appunto controlla e organizza i dati, la view si limita a visualizzarli...
Il long polling "non si usa" quasi più, si cerca di sfruttare altre metodologie....
socket, coap, mqtt etc....
 

Marcolino92

Utente Attivo
6 Nov 2012
28
0
1
Penso di evitare di utilizzarlo allora, comunque ora che realizzo forse non mi ero spiegato molto bene sul mio problema, perche forse tu hai capito che volevo semplicemente aggiornare la visualizzazione di ogni nuova entrata/utente collegato.

Invece avrei proprio bisogno di capire come mostrare correttamente quando un utente è online (mostrando il classico pallino) ma che sopratutto scompaia quando esce dalla sessione. Quello che invece sono riuscito semplicemente a fare è mostrare l'online( quindi il pallino) ogni qualvolta l'utente si collega dicendo banalmente di mostrarmi i risultati dove il campo last_actvity è piu recente, quindi un utente rimane online (pallino verde) anche se è uscito dal sito da 1 ora.
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
perche forse tu hai capito che volevo semplicemente aggiornare la visualizzazione di ogni nuova entrata/utente collegato
No no, era chiaro... non a caso ti ho detto di usare un long polling...

Invece avrei proprio bisogno di capire come mostrare correttamente quando un utente è online (mostrando il classico pallino) ma che sopratutto scompaia quando esce dalla sessione
Mi pare di aver risposto al primo intervento...
Con socket.io risolvi la gestione della contemporaneità e la gestione live degli utenti in sessione...
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [php] Come gestire i tags PHP 1
W Gestire ccTalk o libreria c++ da php PHP 0
W [PHP] gestire una richiesta curl sul server PHP 0
webmachine [PHP] gestire rinnovi PHP 1
D Gestire firme digitali con PHP PHP 0
IImanuII Gestire lingua su facebook con php PHP 18
MarcoGrazia Gestire gruppi e categorie di link con PHP PHP 1
N Gestire i prodotti con php e database PHP 5
ypsilon86 gestire un albero genealogico con PHP e Mysql PHP 0
L Gestire la durata sessioni in PHP PHP 2
D Gestire Crystal Report da PHP PHP 3
Z Gestire foto con php e mysql PHP 1
B gestire immagini PHP PHP 4
F Configurazione PHP/Apache per gestire AJAX PHP 1
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0

Discussioni simili