Eseguo un sito Web di directory locali (si pensi yelp/yell.com ecc.) E devo fornire dati analitici alle aziende elencate sul sito.Monitoraggio utenti - Analisi del sito Web PHP/MySQL personalizzato
ho bisogno di seguire il seguente:
1) Numero di visitatori delle pagine specifiche (es: i widget di Jim era visto 65 volte)
2) Numero di volte che un utente fa clic su un collegamento (vale a dire: 25 utenti hanno fatto clic per visitare il tuo sito Web)
Sono in grado di farlo semplicemente aggiungendo uno al numero pertinente ogni volta che si verifica un'azione.
Quello che vorrei essere in grado di fare è dividere questo in intervalli di date, ad esempio, ultimi 30 giorni, ultimi 12 mesi, sempre.
Come si memorizzano questi dati nel database? Ho solo bisogno della teoria, non del codice! Se qualcuno può spiegare il modo migliore per memorizzare queste informazioni, sarei estremamente grato.
Ad esempio, si utilizza una tabella per le date, una per le pagine/i collegamenti e un'altra per i dati utente (collegamenti selezionati/pagine visitate)? L'unica soluzione che ho finora è quella di aggiungere una nuova riga al DB ogni volta che si verifica una di queste azioni, che non sta andando in scala molto bene.
Grazie a tutti coloro che possono aiutare.
perché reinventare la ruota? dai un'occhiata a http://piwik.org o al grande fratello google analytics;) – cypherabe
Puoi ridurre il numero di nuove righe se non vuoi un'analisi troppo accurata. Come invece delle attività del negozio in base al timestamp (int 10, suppongo), è possibile raggrupparle/memorizzarle di giorno. A proposito, non è una soluzione "definitiva". – HBv6