Si scusa funcool ho risolto e che sto dalle 14.00 a tentar varie cose su questo script senza risultato, abbiamo prelevato il codice delle pagine viste oggi ora mi serve il codice di quante pagine sono state viste in totale...cosa devo modificare?
Printable View
Si scusa funcool ho risolto e che sto dalle 14.00 a tentar varie cose su questo script senza risultato, abbiamo prelevato il codice delle pagine viste oggi ora mi serve il codice di quante pagine sono state viste in totale...cosa devo modificare?
Pagine viste in totale:
Codice:SELECT COUNT(*) AS totale FROM statistiche
Ottimo passaggi finali:
- User Agent
- Provenienza
- Lingua
- IP (ultime cifre mascherate (se possibile))
Cosa vuoi dire con l'ultimo messaggio che hai scritto?
Quale? Il Post #33 :lol:
Certo, quale se no?
Mi occorrono gli ultimi codici per essere sazio e fare un po' di nanna.
Se non spieghi che codici vuoi, è un po' difficile aiutarti.
Mi servono i codici per prelevare dal database:
- User Agent
- Provenienza
- Lingua
- IP (ultime cifre mascherate (se possibile))
Ti faccio solo l'esempio dell'user agent:
Per l'indirizzo IP puoi esplodere la stringa in base ai punti e poi fai vedere l'indirizzo IP fino al punto che vuoi.Codice:SELECT user_agent FROM statistiche
Ottimo grazie funziona tutto bene...grazie funcool e buon Anno!
EDIT: Scusate c'è un problema, avevo chiesto che le visite uniche venissero bloccate ma mi sono dimenticato di dirvi che le volevo bloccare solo quando lo script aggiunge una nuova visita ma no quando blocca tutti gli altri eventi!
Quindi vorresti un nuovo script che blocca le visite uniche?
Ciao...
No, allora mi sono spiegato male, mi spiego con un esempio:
Ho chiesto a funcool di fare in modo che il contatore di visite (giornaliere e totali) bloccassero gli IP unici in modo tale che se un utente faceva il refresh della pagina non si aumentava ne la visita giornaliera ne quella totale però mi sono dimenticato che lo script che inseriva i dati nel MySQL scriveva anche quante volte un utente vedeva una pagina o altro, quindi ora un utente può vedere solo una pagina e basta.
In parole più semplici voglio che:
- Lo script blocchi gli IP unici per non far aumentare le visite giornaliere e totali.
- Lo script non blocchi l'aumento di quante volte una pagina è stata visitata, quanti user agent sono stati usati, quante volte la stessa lingua è stata usata, ecc.....
Devi raggruppare, quando estrai i dati, gli indirizzi IP per giorno e togliere il blocco nell'inserimento dei dati.
Ecco qui alcune guide da studiare.
:???: Ho letto la guida che mi hai indicato ma ancora non capisco come fare, cioè ho capito:
- Come Creare/Eliminare un database
- Come Creare/Eliminare una tabella
- Come Inserire/Eliminare dati in una tabella
- Come estrarre dati da una tabella (in grosso modo)
Ma quello che intendi tu non so come farlo...
Studia "GROUP BY".
Va inserito nella query che legge.
Ma poi il blocco devo levarlo sempre quando leggo o quando scrivo?
Il blocco lo devi levare quando scrivi.
Aspetta ma poi non mi trovo in conflitto con il post #25?
Oppure devo bloccare solo gli IP e no il resto?
Non devi bloccare l'inserimento in nessun modo se vuoi puoi contare tutte le visualizzazioni delle pagine.
Scusami ma proprio non capisco, sto usando la funzione GROUP BY con un po' del codice PHP che mi mostra un sito web e quello di phpMyAdmin ma non riesco ad ottenere quello che voglio io, cioè estrarre tutti i dati di un determinato campo (in questo caso user_agent) e contarne quante volte è stato usato. Questo mi stampa solo il primo user agent in lista usato:
Questo solo quante volte è stato usato il primo user agent in lista:Codice PHP:<?php
/// Connessione
$connessione=mysql_connect("localhost","root","") or die(mysql_error());
$basedati=mysql_select_db("my_miki92") or die(mysql_error());
/// Estraggo i dati
$sql = 'SELECT user_agent, COUNT(*) FROM statistiche GROUP BY user_agent ';
$result = mysql_query($sql) or die(mysql_error());
$totale_visite_oggi = mysql_result($result,0,0);
echo $totale_visite_oggi;
?>
Codice PHP:<?php
/// Connessione
$connessione=mysql_connect("localhost","root","") or die(mysql_error());
$basedati=mysql_select_db("my_miki92") or die(mysql_error());
/// Estraggo i dati
$sql = 'SELECT COUNT( * ) AS `Righe` , `user_agent` FROM `statistiche` GROUP BY `user_agent` ORDER BY `user_agent` LIMIT 0, 30 ';
$result = mysql_query($sql) or die(mysql_error());
$totale_visite_oggi = mysql_result($result,0,0);
echo $totale_visite_oggi;
?>
Questo dovrebbe visualizzarti l'user agent e il numero di volte che è stato utilizzato:
Codice PHP:<?php
/// Connessione
$connessione=mysql_connect("localhost","root","") or die(mysql_error());
$basedati=mysql_select_db("my_miki92") or die(mysql_error());
/// Estraggo i dati
$sql = "SELECT user_agent, COUNT(*) AS num FROM statistiche GROUP BY user_agent";
$result = mysql_query($sql) or die(mysql_error());
while($ris=mysql_fetch_array($result))
echo "User Agent: {$ris['user_agent']} - Numero: {$ris['num']}<br />";
?>
Wow credevo che le speranze erano perse e stavo trovando una soluzione alternativa, comunque si più o meno è quello che cerco, questo codice tuo stampa:
Poi se modifico il codice cosi:Codice:User Agent: - Numero: 12
User Agent: Mediapartners-Google - Numero: 1
User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322) - Numero: 125
User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; FunWebProducts; .NET CLR 2.0.50727; Zango 10.0.370.0) - Numero: 1
User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SIMBAR={EB1DDB1B-F92B-4d61-AC10-CE077BBFF721}; .NET CLR 1.1.4322; InfoPath.1) - Numero: 1
Mi stampa:Codice PHP:<?php
/// Connessione
$connessione=mysql_connect("localhost","root","") or die(mysql_error());
$basedati=mysql_select_db("my_miki92") or die(mysql_error());
/// Estraggo i dati
$sql = "SELECT user_agent, COUNT(*) AS num FROM statistiche GROUP BY user_agent";
$result = mysql_query($sql) or die(mysql_error());
while($ris=mysql_fetch_array($result))
echo "User Agent";
echo "{$ris['user_agent']} - Usato: {$ris['num']}<br />";
?>
Codice:User AgentUser AgentUser AgentUser AgentUser Agent - Numero:
Al posto di:
Devi mettere:Codice PHP:while($ris=mysql_fetch_array($result))
echo "User Agent";
echo "{$ris['user_agent']} - Usato: {$ris['num']}<br />";
Codice PHP:while($ris=mysql_fetch_array($result)) {
echo "User Agent";
echo "{$ris['user_agent']} - Usato: {$ris['num']}<br />";
}
Il problema non è tanto risolto:
Codice:User Agent - Usato: 12
User AgentMediapartners-Google - Usato: 1
User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322) - Usato: 125
User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; FunWebProducts; .NET CLR 2.0.50727; Zango 10.0.370.0) - Usato: 1
User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SIMBAR={EB1DDB1B-F92B-4d61-AC10-CE077BBFF721}; .NET CLR 1.1.4322; InfoPath.1) - Usato: 1