Creazione file log personalizzato

Monital

Utente Attivo
15 Apr 2009
778
2
18
Salve mi chiedevo se qualcuno può aiutarmi a creare un file log personalizzato. io ho trovato una funzione che mi crea un file log in txt che identifica l'ip ora e giorno e file visitati, invece io vorrei creare un log per ogni ID che entra per verificare le azioni che fa sulle pagine

ad esempio

pippo si logga e compra 10 caramelle

vorrei che mi risultasse un file pippo_log.txt(php quel che sia) che mi dica

pippo si è collegato il giorno x alle ore y ed ha comprato 10 caramelle

Qualcuno sa come si può fare e mi potrebbe aiutare?

thank
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
premetto che come detto l'ho trovata in giro sul web e non l'ho manco toccata perchè per ora non sonoa ncorra capace a crearal una funzione
questa però non fa quello che vorrei.
PHP:
<?php
function logItNow()
{
$path_parts = pathinfo( $_SERVER['PHP_SELF'] );
$pageName = $path_parts['dirname'] . '/' . basename( $_SERVER['PHP_SELF'] );
$data = date( 'd/m/y h:i:s', time());
$ip = $_SERVER['REMOTE_ADDR'];
$auth = $_SESSION['AuthInfo'] != 'codAutenticazione' ? '[ Ut. sconosciuto ]' : '[ Ut.riconosciuto ]';

$msg = ' [' . $data . '] [ IP ' . $ip . ' ] ' . $auth . ' .' . $pageName . '' . PHP_EOL ;

$fp = fopen( 'log_accessi.txt' , 'a+' );
fwrite( $fp , $msg );
fclose( $fp );

return $msg;
}
?>

intanto devo registrare l'user che si logga $_SESSION['user_id'] e non l'ip e poi come spiegato su vorrei vedere tutte le operazioni che compie in quella sessione. che poi l'ideale sarebbe che per ogni user che si collega mi apra un file per ogni user
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
cioa
non uso molto i file, però secondo me se segui uno o l'altro esempio sotto dovresti riuscire a fare quello che vuoi
per php 5
PHP:
<?php
//dati da inserire presi da qualche parte
$dato[0]=$nome;//es pinco
$dato[1]=$cognome;//es pallo
$dato[2]=$quante_caramelle;//es 2000
$dato[3]=$data_acquisto;//es 01.06.2012
$scrivi=implode("|",$dato)."\n";//risultato: pinco|pallo|2000|01.06.2012\n
$nome_file=$nome.".txt";//pinco.txt
// da php 5
$ris= file_put_contents($nome_file,$scrivi, FILE_APPEND | LOCK_EX);//se non esiste tenta di crearlo (verifica i permessi)
?>
oppure per PHP 4 e PHP 5
PHP:
<?php
//come sopra
$nome_file=$nome.".txt";//pinco.txt
$handle=fopen($nome_file,'w');//se non esiste tenta di crearlo (verifica i permessi)
fwrite($handle, $scrivi);
fclose($handle);
?>

prova, al massimo non funzia
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao borgo e grazie ma questa sarebbe la parte finale

il problema sono proprio i dati che non so da dove prenderli perchè non so come/dove metterli.

Come faccio a sapere quali operazioni ha effettuato l'utentex?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
l'utente si loggherà da qualche parte o comunque per fare un acquisto dovrà indicare sempre da qualche parte i suoi dati, cosa comprare e quanto comprare
è da quelle operazioni che fa l'utente che devi ricavare i dati.
da quello che capisco il problema non è creare un file
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao
l'utente si loggherà da qualche parte o comunque per fare un acquisto dovrà indicare sempre da qualche parte i suoi dati, cosa comprare e quanto comprare
è da quelle operazioni che fa l'utente che devi ricavare i dati.
da quello che capisco il problema non è creare un file
l'acquisto er aun esempio, in realtà si tratta di una speci di un pannello dia mministrazione ed io vorrei vedere le azioni che compie sullo script chi si logga , del tipo quali pulsanti ha premuto, quali modifiche fatte ald atabase etc.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
forse mi è venuta un idea qualcuno può rinfrescarmi le idee su come memorizzare la pagina su cui si trova l'utente?

perchè pensandoci bene per le operazioni mi basterebbe inviare le variabili al file log avendo usato el sessioni posso inserire i vari dati nell'id della sessione
tipo

riga 1 --> [id sessione] [Accesso data] [Dato orignali del database] [Dati inviati al database] [Pagina di invio]
 

carter

Utente Attivo
15 Feb 2012
68
0
0
per il login usi le sessioni?
perchè una volta che l'utente è loggato ti basta interrogare il db e prendere i dati dell'utente e buttarli nel file di testo...
per comodità ti converrebbe chiamarlo così
Codice:
 $nomeutente."_log.txt"
perchè altrimenti non sai a chi appartiene quel log...
scusami se sono andato troppo oltre o se avevi risolto...
 

carter

Utente Attivo
15 Feb 2012
68
0
0
il file potresti crearlo così...
Codice:
$a=time();
$b=date('dMyHis', $a);
$query_user="QUERY PER SELEZIONARE L'UTENTE LOGGATO";
$result_user=mysql_query($query_user);
$row_user=mysql_fetch_row($result_user);
$user=$row_user[0];
$file=$user.$b.".txt";
$file_pointer=fopen($file,'w') or die ('Impossibile aprire il file');
E COME NOME GLI DAI IL NOME DELL'UTENTE E L'ORA IN CUI VIENE CREATO
E POTRESTI RIEMPIRLO IN QUESTO MODO
Codice:
$query="QUERY PER RECUPERARE I DATI CHE TI SERVONO DAL DB;
$result=mysql_query($query);
$row=mysql_fetch_row($result);
$CAMPO1=$row[0];
$CAMPO2=$row[1];
$CAMPO3=$row[2];

$CAMPOn=$row[n];

$dati= 'CAMPO1: '.$CAMPO1.', CAMPO2: '.$CAMPO2.', ..., CAMPOn: '.$CAMPOn.';
flock($file_pointer,2); 
fwrite($file_pointer,$dati);
flock($file_pointer, 3); 
fclose($file_pointer);

spero di esserti stato utile
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
grazie carter non ho testato ma è già u inizio seppur...............

altro non è he la fine quella. il problemma principale e che nons o come fr capire al log quali pagine visita il loggatoe che azioni intrapende, probabilmente non è possiible come cosa cmq continuoa ceercare
 

carter

Utente Attivo
15 Feb 2012
68
0
0
grazie carter non ho testato ma è già u inizio seppur...............

altro non è he la fine quella. il problemma principale e che nons o come fr capire al log quali pagine visita il loggatoe che azioni intrapende, probabilmente non è possiible come cosa cmq continuoa ceercare

per le pagine visitate potresti farlo con dei flag...se sono pagine riservate l'utente è loggato e magari setti il flag se viene visualizzata la pagina...
per le operazioni che compie...dovrebbe essere un pò studiata come cosa...

se tu utilizzassi un cms potresti cercare dei plugin...
di nulla
 

carter

Utente Attivo
15 Feb 2012
68
0
0
se può servirti però,
queste sono istruzioni che ho visto da qualche parte e che in qualche modo potrebbero fare al caso tuo...
Codice:
 $_SERVER['REQUEST_URI']
oppure
Codice:
 $_SERVER['SCRIPT_NAME']

dovrebbero restituirti il nome della pagina...

Codice:
 date_format()

dovrebbe darti la data e l'ora di connessione
e
Codice:
 $_SERVER['HTTP_REFERER']
(anche se non funziona proprio benissimo)
dovrebbe darti la pagina precedente...
almeno per quanto riguarda la prima parte di quello che devi fare..
per quanto riguarda le azioni che intraprende non so cosa intendi...
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
per le pagine visitate potresti farlo con dei flag...se sono pagine riservate l'utente è loggato e magari setti il flag se viene visualizzata la pagina...
per le operazioni che compie...dovrebbe essere un pò studiata come cosa...

se tu utilizzassi un cms potresti cercare dei plugin...
di nulla


ok ok ci sto arrivando mi hai dato delle info preziosissime, visto che ti vedo rpeparato su sta cosa mi vorrei evitare una ricerca, dato che è una cosa a stempo perso,


per curiosità sarebbe sto flag?
 

carter

Utente Attivo
15 Feb 2012
68
0
0
per flag intendo una variabile che viene avvalorata nel caso l'utente "faccia qualcosa" in una pagina...
per esempio, se un utente visita una pagina di questo forum...per flag intendo una variabile magari di sessione che viene avvalorata "nel frammento" di codice che l'utente esegue per fare l'azione...che in questo esempio potrebbe essere la risposta a una discussione...questo per evitare che la variabile venga avvalorata caricando soltanto la pagina...
però se devo esserti sincero non ho studiato bene la cosa...dovrei avere sotto mano un pò del tuo codice...
come l'utente esegue le azioni (se deve essere loggato o no)...quali sono queste azioni...se puoi posta il codice di una pagina in cui ti serve sapere se l'utente compie l'azione o no...magari ci capisco qualcosa di più...o ti aiuta qualcunaltro...
saluti
dario
 
Discussioni simili
Autore Titolo Forum Risposte Data
spider81man Creazione di un UNICA tabella da più file .CSV PHP 1
S Download di un file in automatico dopo la sua creazione PHP 2
A recuperare data creazione di un file PHP 6
filips Creazione file di testo e scrittura Javascript 6
S creazione automatica file .php PHP 1
D Modifica data creazione file in fso Classic ASP 0
R Problema con la creazione file PHP 2
T creazione file xml Java 3
G [risolto] Creazione file excel con PHP PHP 3
F Creazione File XML, differenze tra WP e Blogger WordPress 4
L Creazione tabella Html con popolazione dati da file di testo (txt) Ajax 12
A creazione file js da includere in un documento html Javascript 6
carter Problema creazione dinamica file txt PHP 2
J creazione file .xls PHP 2
F creazione e stampa file pdf mediante PHP PHP 2
frankiedeguello Ordinare file per data di creazione PHP 1
A Creazione cookie e gestione accessi PHP 0
D Creazione sito e-commerce WP Content Management System (CMS) 0
A Consiglio per creazione sito web Content Management System (CMS) 0
S CREAZIONE DI SITO PER CORSI DI FORMAZIONE WordPress 1
M Creazione menu a tendina Javascript 3
G creazione menu a tendina e invio a pagina php PHP 1
M Problemi con creazione maschere Presentati al Forum 1
F Creazione script Tv Presentati al Forum 1
W Creazione Cartella Classic ASP 2
D Neofita. Creazione applicativo prenotazione automezzi Offerte e Richieste di Lavoro e/o Collaborazione 12
L Aiuto creazione menu mancante WordPress 0
E Creazione URL per chat whatsapp WordPress 1
L Creazione di 2 o più record PHP 6
W Creazione di una griglia HTML e CSS 1
E Creazione di un sito di news PHP 16
S Scelta software/cms per creazione sito Webdesign e Grafica 6
E Creazione gestionale timesheet partendo da foglio excel Offerte e Richieste di Lavoro e/o Collaborazione 0
M Creazione notifica sonora Javascript 1
R Creazione sito eccomerce privato. Offerte e Richieste di Lavoro e/o Collaborazione 2
I Creazione programmino JAVA Offerte e Richieste di Lavoro e/o Collaborazione 0
D Difficile creazione excel di dati di grandi dimensioni Classic ASP 2
I creazione stile css HTML e CSS 3
A [Offro][retribuito] Creazione siti web/ web app (Django) Offerte e Richieste di Lavoro e/o Collaborazione 2
Stefano Migotto Creazione di un div con php o js PHP 9
G [OFFRO][RETRIBUITO] Creazione siti web e loghi professionali Offerte e Richieste di Lavoro e/o Collaborazione 0
D Creazione sito Offerte e Richieste di Lavoro e/o Collaborazione 0
D CREAZIONE E GESTIONE SITO E-COMMERCE Offerte e Richieste di Lavoro e/o Collaborazione 2
C [WordPress] Retribuzione creazione Sito Web vetrina Discussioni Varie 3
I [Javascript] Creazione di una piccola libreria e integrazione in angular Javascript 2
S [OFFRO] Creazione di programmi per la modifica automatizzata di testi Offerte e Richieste di Lavoro e/o Collaborazione 0
T [php] problema creazione query select-where PHP 5
Daniele_Carrara [PHP] Creazione Carrello PHP 1
G Creazione Landing Page Offerte e Richieste di Lavoro e/o Collaborazione 2
P [HTML] Creazione pagina web da dove iniziare HTML e CSS 2

Discussioni simili