Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]CRON i usuwania określonych wpisów.
Forum PHP.pl > Forum > Przedszkole
Kużdo
Witam.
Do swojego projektu chcę dodać historię logowań dla każdego z użytkowników. Historia zawierałaby 10 ostatnich logowań (kiedy i z jakiego IP, ale to nie ważne). Problem w tym, że już na samym starcie serwisu użytkowników będzie około 3k-4k i taka tabela ostatnich logowań może bardzo szybko się powiększać, więc trzeba byłoby usuwać zbędne wpisy... Problem w tym, że nie mam zielonego pojęcia jak to ugryźć... Wiem jak pobrać wszystkie logowania danego użytkownika w odwrotnej kolejności do ich wstawiania, ale nie wiem co dalej zrobić... Jak określić, że skrypt ma skasować wpisy od 11 wzwyż. 11 wpis to wpis najstarszy... 1 wpis to najmłodszy...

  1. <?php
  2. include 'config.php';
  3. $q = mysql_query("SELECT id FROM users") or die(mysql_error());
  4. while($row = mysql_fetch_row($q)){
  5. $ip = mysql_query("SELECT id, id_user FROM logins WHERE id_user = ".$row[0]." ORDER BY id DESC") or die(mysql_error());
  6. echo $row[0].' WPISY.<br />';
  7. while($ips = mysql_fetch_row($ip)){
  8. echo 'ID_USER: '.$ips[1].' ID wpisu: '.$ips[0].'<br />';
  9. }
  10. }
  11. ?>



A może lepiej zrobić to normalnie gdy user się loguje?
Z góry dziękuję za wszelkie wskazówki.


Pozdrawiam.
MateuszS
Niech user usuwa sobie te starsze wpisy podczas logowania, tzn. załóżmy że loguje się 10 raz, widzi swoje 10 ostatnich logowań. Następnego dnia loguje się znowu, czyli już jeden wpis trzeba usunąć, i podczas logowania, ten wpis można właśnie usunąć, prostym zapytaniem DELETE z DESC LIMITEM 1. I nie będziesz miał zasyfionej bazy
Kużdo
Wielkie dzięki za odpowiedź... W sumie zrobiłem już skrypt pod crona ale faktycznie, nie warto go angażować, bo przecież nie wszyscy userzy muszą się codziennie logować, a on i tak musiałby ich sprawdzić...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.