Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Błąd w skrypcie odwiedzin, Proszę o pomoc!
zavada
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 6
Dołączył: 15.06.2009
Skąd: Kraków

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


Witam!
Mam taki problem w skrypcie:

  1. <?php
  2.  
  3.  
  4. $ip = $_SERVER['REMOTE_ADDR'];
  5.  
  6. $query = "SELECT * FROM locked WHERE `ip` = '$ip'";
  7. $result = mysql_query ($query);
  8. if (mysql_num_rows ($result) != 0) {
  9.  $row = mysql_fetch_array ($result);
  10.  if ($row['type'] == 4) {
  11.    header ("Location: locked.html");
  12.  }
  13.  if ($row['type'] == 2) {
  14.    header ("Location: locked.html");
  15.  }
  16.  if ($row['type'] == 1 AND $_SESSION['visit'] != '1') {
  17.    header ("Location: warning.html");
  18.  }
  19. }
  20.  
  21. if ($_SESSION['visit'] != '1') {
  22.  $_SESSION['visit'] = '1';
  23.  $query = "SELECT * FROM locked WHERE `ip` = '$ip'";
  24.  $result = mysql_query ($query);
  25.  if (mysql_num_rows ($result) == 0) {
  26.    $type = '3';
  27.    $query = "INSERT INTO locked (`ip` ,`visits` ,`last_visit` ,`type`, `comment`) VALUES ('$ip', '1', NOW(), '$type', '')";
  28.    mysql_query ($query);
  29.  }
  30.  else {
  31.    $row = mysql_fetch_array ($result);
  32.    $ip = $row['ip'];
  33.    $visits = $row['visits'] + 1;
  34.    $type = $row['type'];
  35.    $query = "UPDATE locked SET `visits` = '$visits', `type` = '$type', `last_visit` = NOW() WHERE `ip` = '$ip'";
  36.    mysql_query ($query);
  37.  }
  38. }
  39.  
  40. ?>


Dla wartości 4 i 2 działa, a dla 1 - nie. Zapewne chodzi o sesję, bo usunąłem to $_SESSION['visit'] != '1' i działało. (wyciąłem łączenie z bazą MySQL) Proszę o pomoc!

Ten post edytował zavada 18.07.2009, 18:58:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
lewy87r
post
Post #2





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 10.05.2008

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


hmm... a co ma sie wykonac dla jedynki ?

generalnie napisz cos wiecej bo wedlog tego skryptu to dla jedynki nic nie powinno sie chyba wykonac ;]
jesli chodzi o $_SESSION['visit']
Go to the top of the page
+Quote Post
zavada
post
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 6
Dołączył: 15.06.2009
Skąd: Kraków

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


1 to ostrzeżenie (w banowaniu użytkowników). $_SESSION['visit'] to sesja, która sprawdza, czy jest to wejście na strone, czy przejście z inneh poodstrony (jak wchodzi się na strone, to sesja jest równa ''). Ja sprawdzam, czy nie jest pusta, jak jest pusta,to znaczy że ktoś wszedł na stronę i zmieniam ją na 1, a jeśli ktoś przeszedł z innej podstrony to jest równa 1 i nie ma pokazywać ostrzeżenia.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 03:53