Witam!
Mam mały problem ze skryptem służącym do banowania użytkowników.
Przez JS przekazuje do PHP, który użytkownik ma być zbanowany i na ile minut.
  1. function lockUser (user) {
  2. time = prompt ("Na ile minut wyciszyć tego użytkownika?\nNazwa użytkownika: " + user + "\n", "10");
  3. if (parseInt (time) != "NaN" && parseInt (time) == time && time != "" && time != null && time != "undefined") {
  4. window.location = "shoutbox.php?action=lock_user&user=" + user + "&time=" + time;
  5. }
  6. }

Kolejny skrypt PHP oblicza, do kiedy użytkownik ma być zbanowany i ustawia odpowiednią datę i godzinę w MySQL. Nie ma na razie żadnego problemu.
  1. if ($action == 'lock_user' AND !empty ($user) AND is_numeric ($time)) {
  2. $ban = date ('Y-m-d H:i:s', strtotime(date ('H:i:s') . ' +' . $time . ' minutes'));
  3. $query = "UPDATE users SET `shoutbox` = '$ban' WHERE `user` = '$user' LIMIT 1";
  4. mysql_query ($query);
  5. echo ('<div class="message"><img src="icons/accept.png" class="icon">&nbsp;Użytkownik został wyciszony. Blokada potrwa do: ' . $ban . '.</div><br>');
  6. }

Wszystko ładnie działa.

Teraz czas na drugą częśc skryptu, w której pojawia się niemały problem, otóż skrypt pobiera, do kiedy użytkownik ma ewentualnego bana i:
- jeśli ban minął: zmienia wartość pola w MySQL z powrotem na 0000-00-00 00:00:00;
- jeśli ban NIE minął: wyswietla wiadomość, którą zaraz wpiszę oraz kończy skrypt.

Pracuje nad tym już kilka dobrych godzin i nie mogę sobie z tym poradzić. Jakieś mktime, strtotime - to mnie przeraża.
Proszę więc o pomoc.