Comunque per rispondere al tuo primo quesito, io risolverei semplicemente creando una tabella aggiuntiva nel database per memorizzare il log degli eventi.
Supponendo che la tabella si chiami log:
Codice PHP:
// Connessione al database:
$db = mysql_connect($db_host, $db_user, $db_password);
if (!($db)) die ("Errore nella connessione. Verificare i parametri nel file bla bla bla...");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri bla bla bla...");
$query = "INSERT INTO counter (page_id, time) VALUES ('$page_id', '$time',)";
if (!(mysql_query($query, $db))) { echo "Errore nella query utente..."; }
else { $log_query = "INSERT INTO log (user_id, query_string) VALUES ('$user_id', '$query')";
if (!(mysql_query($log_query, $db))) { echo "Errore nella query di log..."; }
} else { echo "Query eseguita correttamente..."; }
Se la prima query (quella eseguita dall'utente) va a buon fine, viene lanciata anche la query di log, che salva i dati che ti interessano nel database.