Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]logi do bazy danych, jw
Rozpalacz
post
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 31.01.2006

Ostrzeżenie: (0%)
-----


Witam,

potrzebuję zrobić logi do wszelkich zmian dokonywanych na bazie danych (MySQL) przez użytkowników.

W jaki sposób zapisywać takie logi? Każde wywołanie zapytania?
Jak najlepiej przechowywać takie logi (pliki, baza)?
Co przechowywać w logach (co sie może przydać o czym jeszcze nie wiem - IP, data_czas, same zapytania czy je jakoś przetwarzać)?
Jeśli użytkownik rejestruje się, to czy od razu robić LOG ze wszystkimi wpisanymi informacjami? czy za każdym razem sprawdzać tylko czy sie coś zmieniło?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Pitter
post
Post #2





Grupa: Zarejestrowani
Postów: 75
Pomógł: 8
Dołączył: 9.08.2008

Ostrzeżenie: (0%)
-----


Ja bym to zrobił w bazie danych, chociaż w wielu cms jest to zrobione na plikach. Co powinien zawierać log?
Moim zdaniem:
- funkcja dokonana (np. edycja newsa id 5)
- data, czas
- ip
- login
chyba tyle.
Jak je zapisywać.
Musimy stworzyć funkcję o nazwie przykładowej AddLog('news','edit','5');
Ja bym ją zrobił tak:
  1. <?php
  2. //w panelu admina po wykonaniu każdego zapytania np. edycji newsa dodaje funkcję
  3. AddLog($op,$cmd,$id);
  4.  
  5. function AddLog($op,$cmd,$id)
  6. {
  7. $login = $_SESSION['login'];
  8. $ip = $_SERVER['REMOTE_ADDR'];
  9.  
  10. $query = "INSERT INTO logi VALUES('$id','$op','$cmd','$login','$ip',now())";
  11. $result = mysql_query($result);
  12. }
  13. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 19:43