Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przekleństwo na Pozdrowieniach = ban!
LeNy
post 20.02.2009, 18:09:51
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


Witam. Mam pozdrowienia OnLine i chciałbym zrobić coś takiego że jak ktoś napisze przeklenstwo to ja po zalogowaniu w konsolke moge dac na ip bana ze nie będzie mógl dodać pozdro. Jak takie coś zrobić questionmark.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
phpion
post 20.02.2009, 18:12:43
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Utwórz sobie tablicę zawierającą niedozwolone słowa (wulgaryzmy), następnie sprawdzaj czy którekolwiek z tych słów nie znajduje się w treści pozdrowień (przydadzą się wyrażenia regularne). A ban na IP? Stwórz w bazie danych tabelę, która będzie przechowywała listę zbanowanych IP i przed wysyłaniem wiadomości sprawdzaj czy IP pozdrawiającego nie znajduje się w tej tabeli. Tyle - tak z grubsza.
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 18:15:23
Post #3





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


zle mnie zrozumiałeś chcę zrobić że jak zaloguje sie w panel admina gdzie moge usuwac te pozdro to jak np zobacze ze ktos przeklnie lub obrazi to klikne ZBANUJ! i zapisze jego ip np w pliku ban.txt + jeszcze zeby było jak ktoś z zbanowanym Ip napisze to zeby jego pozdro nie zostawalo dodawane tylko mial napis Dostałeś bana czy cos takiego
Go to the top of the page
+Quote Post
phpion
post 20.02.2009, 18:17:07
Post #4





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(LeNy @ 20.02.2009, 20:15:23 ) *
zle mnie zrozumiałeś

Dobrze cię zrozumiałem.
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 18:21:20
Post #5





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


a koniecznie musze w mysql robic bo ja z jakis rok nie siedzialem w mysql i nie pamietam :/
Można zrobić zeby zapisywalo w pliku tekstowym??
Go to the top of the page
+Quote Post
phpion
post 20.02.2009, 18:22:55
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(LeNy @ 20.02.2009, 20:21:20 ) *
Można zrobić zeby zapisywalo w pliku tekstowym??

Oczywiście.
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 18:30:22
Post #7





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


zrobiłem coś takiego:
  1. <?php
  2. $blocked "ban.txt";  
  3.  
  4.  if (ereg($blocked))  
  5.  {  
  6.  echo "Dostałeś Bana! ";  
  7.  exit();  
  8.  }  
  9.  ?>


Czy to jest dobry kod na czytanie z pliku ban.txt i jak jest ip zapisane to wyskakuje Dostałeś Bana! questionmark.gif

Ten post edytował LeNy 20.02.2009, 18:34:31
Go to the top of the page
+Quote Post
phpion
post 20.02.2009, 18:31:31
Post #8





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Weź to zapisz w normalnych tagach ([PHP]) bo nie idzie tego odczytać.
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 18:35:30
Post #9





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


Już Zmieniłem kod w poprzednim poście
Go to the top of the page
+Quote Post
phpion
post 20.02.2009, 18:41:51
Post #10





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




W takim razie tamten kod nie ma prawa działać.

1. Pobierz dane z pliku (fopen + fgets + fclose, file lub file_get_contents - do wyboru do koloru).
2. ereg jest ci w tym momencie zbędny
3. Sprawdzaj czy IP internauty znajduje się w pliku.
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 18:43:29
Post #11





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


A podałbyś mi przykład kodu, bo mi jest to pilnie potrzebne :/
Go to the top of the page
+Quote Post
phpion
post 20.02.2009, 19:09:21
Post #12





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




  1. <?php
  2. $ip = '127.0.0.1';
  3. $is_banned = true;
  4.  
  5. $file = fopen('ban.txt');
  6.  
  7. while (!(feof($file))) {
  8.    $line = chop(fgets($file, 15)); // IP = max 15 znaków
  9.    
  10.    if ($line == $ip) {
  11.        break;
  12.        $is_banned = false;
  13.    }
  14. }
  15.  
  16. fclose($file);
  17.  
  18. if ($is_banned === true) {
  19.    echo 'Masz bana!';
  20.    exit;
  21. }
  22.  
  23. // nie masz bana
  24. ?>

Schowałem tutaj 3 niespodzianki (w 3 miejscach musisz dokonać niewielkich zmian).
Go to the top of the page
+Quote Post
LeNy
post 20.02.2009, 19:41:46
Post #13





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 17.01.2009

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


dzieki wielkie.

//lock temat
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 15:31