Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Conta click evitando ripetizioni, refresh e raffiche

    Volevo fare un contatore tramite file .txt (senza mysql nè cookie).
    Fin qui sono riuscito con le varie funzioni di fopen, fput...scrivo un numero e lo incremento di 1 ad ogni click.
    Volevo evitare però i click "omaggio" di chi sfoglia il sito tanto per spippolare e clicca sui link, di chi fa refresh tanto per fare etc....

    Mi basterebbe che l'incremento del numero di click nel file.txt venisse eseguito se sono passati almeno 5 secondi dal click precedente.

    Come si potrebbe fare?
    grazie..
    Fantasupermegafavolipermeramagicultra irresistibili
    4 10 30 100 1001 personaggi insuperabili fantaincredibili ultraimpossibili iperterribili irresistibili!!!

    "... a quell'età ... bastava un dito per fare la pace ..."
    fotine

  2. #2
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    nè cookie
    Il web è stateless. Sapendo questo, l'unico dato a cui puoi fare affidamento per distinguere i vari visitatori è l'ip. Ma se due, tre, diecimila persone si connettono al tuo sito da uno stesso proxy, per via di come hai scelto di progettarlo, il tuo contatore li considererà un unico visitatore. Visto che vuoi contare le visite con tanta precisione, mi pare sensato ribadirlo.
    Mi basterebbe che l'incremento del numero di click nel file.txt venisse eseguito se sono passati almeno 5 secondi dal click precedente.
    Proprio perché il web è stateless, è necessario memorizzare/ricordare tutti gli ip unici incontrati in un file a parte. Ad ogni ip devi associare una data. Quando vai ad aggiungere la visita in questione, devi prima di tutto controllare che l'ip in questione non sia già stato contato precedentemente. Se non lo è devi aprire quel file con tutti gli ip unici incontrati fin'ora, insieme alle date, e verificare che la prima entry sia avvenuta da almeno 5 secondi. Se lo è, aggiungi la visita, e marca quell'ip come "ip già contato nelle mie visite".

    Farlo con dei file di testo non è il massimo, per una serie di ragioni. Dai una occhiata a HyperLogLog di redis. Potrebbe semplificarti la vita.

  3. #3
    Ok, temo di aver scritto il post in un momento di stanchezza... Hai ragione su tutti i fronti, soprattutto tenendo di conto anche il fatto che volevo fare qualcosa di semplice...

    Non ho capito questa affermazione...
    Quote Originariamente inviata da .Kurt Visualizza il messaggio
    Visto che vuoi contare le visite con tanta precisione, mi pare sensato ribadirlo.
    ... c'è qualcuno a cui piace ricevere i click coi conti sballati?

    Penso che per ora mi prenderò i click come vengono... Per quello che è il mio progettino basterà ugualmente...


    Cmq, così per parlare, non si potrebbe collegare il link a del javascript che con un countdown interno rilascia la possibilità di "funzionare" al pezzo di codice solo dopo 5 secondi? Poi se un clicca prima va alla pagina desiderata ma lo script per incrementare il contatore non viene eseguito...

    Boh.. forse sono sempre in preda alla stanchezza ...
    Fantasupermegafavolipermeramagicultra irresistibili
    4 10 30 100 1001 personaggi insuperabili fantaincredibili ultraimpossibili iperterribili irresistibili!!!

    "... a quell'età ... bastava un dito per fare la pace ..."
    fotine

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.