Pagina 1 di 2 12 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 34

Discussione: durata visualizzazione

  1. #1
    Guest

    Predefinito durata visualizzazione

    sono giorni che cerco su internet ma niente.
    Vi espongo il mio problema:
    voglio creare una specie di contatore visite o qualcosa del genere. l'unica funzione che non riesco a far andare o a far simulare allo script in qualche modo è verificare quando l'utente chiude la pagina. Tento di essere più chiaro:

    nel db salvo che l'utente pippo ha aperto la pagina ciccio.php alle 1125999868

    quando lui la chiude come faccio a fargli scrivere che l'ha chiusa a una determinata ora?
    il mio scopo reale è determinare se un utente è ancora presente in una pagina o no, (e facendo in questo modo sarebbe possibilissimo) in modo ad esempio da poter visualizzare tutti gli utenti online in un certo momento.
    inoltre non vorrei mai e poi mai usare il onunload (ossia fargli aprire una finestra alla uscita dalla pagina)

    spero di essere stato chiaro. ne ho un bisogno urgente.
    Ultima modifica di cornaro : 06-09-2005 alle ore 16.34.02

  2. #2
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Più che l'evento "fine permanenza in pagina" (tipicamente molto lato-client, appunto con onunload, perché al server non gli frega tanto se uno chiude una pagina ma quando fa la richiesta) penso sia più da vedere la cosa dal punto di vista della
    SESSION
    (ammetto subito che non è il mio punto forte)

    Quando negli altri servizi di statistica leggi cose tipo:
    "tempo di permanenza nella pagina tale.php: 4:32"
    (forse è questo che ti ha ispirato no?)
    penso sia soltanto un calcolo ricavato dall'ora in cui ha aperto ALTRE pagine (successive) che lui ovviamente usa per dedurra la chiusura di quelle visitate in precedenza.
    Penso sia chiaro, ma appunto è solo una mia deduzione.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  3. #3
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Anche a me interessa questa cosa per la mia chat.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  4. #4
    Guest

    Predefinito

    fin qui c'ero arrivato. ossia segnare come fine visualizzazione della pagina l'ora di visualizzazione della nuova pagina. ma il mio scopo non è creare statistiche. io voglio fare la tipa scritta :" ora siamo in ** " capito? pensavo che con questa funzione ossia segnando chi ha visualizzato una pagina e non l'ha neancora chiusa si potesse fare.

  5. #5
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    allora, può essere fatta una cosa del genere... in poche parole devi salvare la data di quando è entrato...

    VIA sessioni.
    VIA salvataggio dati, con riconoscimento via ip.

    Naturalmente con le sessioni sarebbe più facile se non hai nessun "login" o altro che per motivi altrui salva già delle date.

    Cmq salci nella sessione la data in cui entra, magari controllando che non ci sia già, se no non fai altro che sovvrascrivere:

    session_start();
    if(!isset($_SESSION["data_ent"]))
    $_SESSION["data_ent"] = time();

    e dopo fai il confronto ogni volta dell'attuale time....

    time() - $_SESSION["data_ent"]

    e dal risultato ricavi il tempo

    WebScript

  6. #6
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Ma come faccio a verificare chi è presente?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  7. #7
    Guest

    Predefinito

    Citazione Originalmente inviato da webscript
    allora, può essere fatta una cosa del genere... in poche parole devi salvare la data di quando è entrato...

    VIA sessioni.
    VIA salvataggio dati, con riconoscimento via ip.

    Naturalmente con le sessioni sarebbe più facile se non hai nessun "login" o altro che per motivi altrui salva già delle date.

    Cmq salci nella sessione la data in cui entra, magari controllando che non ci sia già, se no non fai altro che sovvrascrivere:

    session_start();
    if(!isset($_SESSION["data_ent"]))
    $_SESSION["data_ent"] = time();

    e dopo fai il confronto ogni volta dell'attuale time....

    time() - $_SESSION["data_ent"]

    e dal risultato ricavi il tempo

    WebScript
    ma così guardo solo quanto tempo fa è entrata una certa persona non se è ancora online

  8. #8
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    eh ok.. ma...
    e dopo fai il confronto ogni volta dell'attuale time....
    "ogni volta"... quando?
    (chiedo)
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  9. #9
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    allora... se c'è il login, salva la data di login... e ogni tot controlli se è presente, con questi dati puoi trovare da quanto stanno dentro con una differenza di time.

    Se non gli hai, puoi riconoscerli con un ip... ad ogni pagina che entrano aggiorni una data, e poi verifichi che se questa data dista troppo dal time attuale, vuol dire che non hanno aperto più pagine, e vuol dire che non ci sono più.

    X heracl edit. Ogni volta che ricarica la pagina... se no hai bisogno di javascript che puoi fargli fare qlche giochetto, in modo che ricavi la differenza... e poi con javascript la fai aumentare... esempio ricarica la pagina... lo script dice che son dentro da 4 ore...

    tu gli fai aumentare con javascript i secondi....

    4 01, 4 02, come se fosse n'orologio.

    DOpo quando riaggiorna la pagina il time attuale cambia, e javascript si riazzera... come un countuo da una certa data...
    Ultima modifica di webscript : 06-09-2005 alle ore 17.59.46

  10. #10
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    E quanto deve essere questa differenza?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  11. #11
    Guest

    Predefinito

    era proprio questa l'ultima soluzione a cui ero giunto.
    ma non so che tempo usare.
    insomma se metto poco tempo (10 secondi) e uno sta 11 secondi in una pagina già è segnato assenta.
    se metto troppo tempo va a finire che uno che magari ha già chiuso in realtà viene segnato come presente (anche il phpbb2utenti presenti negli ultimi 5 minutise uno è andato via 3 minuti fa è segnato ancora come presente)

  12. #12
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    bhe, non puoi fare un redirect... disturba troppo... se no la soluzione sarebbe passare alla tecnologia che fa "dialogare" client e server senza aggiornare la pagina... ma in riguardo so poco, e non penso che su AV sia permesso...

    X funcoll:

    esempio allora io salvo il time che indica 10 minuti fa (magari il riconoscimento è via ip).

    Sto aggiornando la pagina, ok adesso la differenza di time mi indica 10 minuti in secondi...

    non rimane altro che dal numero 600 (secondi) ricavare 10 (minuti)
    Ultima modifica di webscript : 06-09-2005 alle ore 18.03.50

  13. #13
    Guest

    Predefinito

    Citazione Originalmente inviato da webscript
    bhe, non puoi fare un redirect... disturba troppo... se no la soluzione sarebbe passare alla tecnologia che fa "dialogare" client e server senza aggiornare la pagina... ma in riguardo so poco, e non penso che su AV sia permesso...
    ma nessuno deve move essere reindirizzato da nessuna parte. ad esempio: come fa questo forum a farmi vedere che in questo preciso momento ci sono 38 visitatori? o come fa php stats a dirmi che in un certo momento ci sono 5 visitatori o come fanno quelli di shiny?

  14. #14
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    allora, questo forum non ti dirà mai un valore affidabile al 100 %, ma ti da il valore dell'ultima volta che hai ricaricato la pagina...

    E anche se cosi fosse, non è cmq affidabile, perchè se non fai il logout non è evidente che il server mi riconosca come out

  15. #15
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Ah ok, appunto solo con javascript che avvia richieste http costanti.
    Basterebbe far ricaricare il src di una IMG che ha come SRC="/cartella/script.php"
    certo addirittura con precisione del secondo!
    secondo me già che risultano i minuti o almeno con precisione di 30 o 15 secondi già è qualcosa, altrimenti se lo script lo cominciassero ad utilizzare in molti sarebbe una continua richiesta di script php (e scrittura su db o file, stesso problema che sto tentando di risolvere..).
    Ultima modifica di heracleum : 06-09-2005 alle ore 18.08.25
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  16. #16
    Guest

    Predefinito

    è questo il punto.. per me va bene che gli utenti segnati siano quelli che ci sono in fase di generazione della pagina. tutto ok fin qui. è l'affidabilità di quella cifra che mi turba.

  17. #17
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    bhe il tutto sta nella comunicazione client-server

    io non conosco benissimo javascript... l'unico sistema di comunicazione che conosco è ricaricare la pagina, utilizzando come mezzo _GET
    Ultima modifica di webscript : 06-09-2005 alle ore 18.14.15

  18. #18
    Guest

    Predefinito

    il punto è c'è un qualche comando in php che corrisponde alla chiusura della pagina e che mi permetta di fargli eseguire delle funzioni in quel momento o devo per forza ricorrere al pessimo javascript on unload (o onexit non mi ricordo bene qual'è)

  19. #19
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    php, non può interagire con la pagina una volta che è caricata...

    il php è un linguaggio server, e non può interrogare il server quando la pagina è già stata ricaricata...
    Ultima modifica di webscript : 06-09-2005 alle ore 18.31.54

  20. #20
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da cornaro
    il punto è c'è un qualche comando in php che corrisponde alla chiusura della pagina e che mi permetta di fargli eseguire delle funzioni in quel momento o devo per forza ricorrere al pessimo javascript on unload (o onexit non mi ricordo bene qual'è)
    L'evento è onunload, però non puoi aprire pop-up con questa funzione perché la maggior parte dei browser blocca i pop-up non aperti dall'utente.
    A me serviva un metodo per cancellare da un file di testo un utente quando esce dalla chat.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  21. #21
    Guest

    Predefinito

    sì giusto... potrei mettergli un frame di misure 1*1 che si aggiorna continuamente e risolverei molti problemi così ma sarebbe veramente pesante. magari potrei farglielo aggiornare con l'header di php document location ma distruggerebbe il server..

  22. #22
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    devi fare uno script che controlli se dal time attuale sia passato un tot tempo dall'ultimo agg pagina...

    col php la vedo come unica soluzione... se vuoi usare la gestione utenti in linea di un forum

  23. #23
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Quasi quasi mi scarico qualche forum tipo PhpBB e guardo come funziona...
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  24. #24
    Guest

    Predefinito

    penso che il php funzioni allo stesso modo infatti c'è scritto *utenti online negli ultimi 5 minuti* infatti nel db c'è proprio la colonna last_time_online ossia prende tutti i tempi e vede se sono passati più di 5 minuti.

  25. #25
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Infatti, ti dicevo, di solito c'è parecchia approssimazione nei tempi della durata online di utenti...
    addirittura sopra si parlava di precisione al secondo (per quello ero parecchio perplesso) mentre un "timeout" di 5 minuti mi sembra molto più verosimile.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  26. #26
    Guest

    Predefinito

    a me sembra troppo un time out di 5 minuti penso che una cosa adeguata sarebbe sui 10 secondi solo che se uno rimane più di 10 secondi su una pagina poi viene segnato come insesistente.

  27. #27
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    c'è la soluzione di ricaricare la pagina... ma è orrenda e da evitareq

  28. #28
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da webscript
    c'è la soluzione di ricaricare la pagina... ma è orrenda e da evitareq
    Come funziona questa soluzione?
    Io la chat la ricarico dopo pochi secondi perché lo fatta di PHP e non è un applet.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  29. #29
    L'avatar di webscript
    webscript non è connesso Utente attivo
    Data registrazione
    28-11-2004
    Messaggi
    320

    Predefinito

    si ma capisci che in un forum ogni 10 secondi far ricaricare la pagina è orrendo...

  30. #30
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da webscript
    si ma capisci che in un forum ogni 10 secondi far ricaricare la pagina è orrendo...
    Ma a me serve per la chat. Non me lo puoi spiegare allora questo metodo?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

Pagina 1 di 2 12 UltimoUltimo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •