Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> banowanie problem...
sowa75
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


Witam!

Jestem początkujący w php mam problem ze skryptem banowania użytkowników strony przez ip Prosze pomóżcie (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif) :

baza danych którą zrobiłem przez phpMyAdmin na yoyo:

nazwa:banned_ip

id // int(11) // not null // auto_increment // primary key
data // date // not null
powod// varchar(100) // not null
ip // varchar(30) // not null



Skrypt php (ban.php):
  1. <?php
  2.  
  3. $connection = @mysql_connect('mysql2.yoyo.pl', 'nazwa_uzytkownika', '***haslo***')
  4. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  5. $db = @mysql_select_db('nazwa_bazy', $connection)
  6. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  7.  
  8. function sprawdz_banned_ip($ip) {
  9.  
  10. $query = "SELECT id, data, powod FROM banned_ip WHERE ip = '$ip'";
  11. $result = mysql_query($query) or die (mysql_error());
  12. $num_rows = mysql_num_rows($result);
  13.  
  14. if($num_rows >= "1") {
  15. echo '<h2><center><font color="red">Zostałes zbanowany !!</font></center></h2><p></p>';
  16.  
  17. $db = mysql_fetch_array($result);
  18.  
  19. echo "<b>ID</b> $db[id]<br/><b>Zostałes zbanowany</b> ".date("d-m-Y", $db[data])." <br/><b>Za</b> $db[powod]";
  20. exit();
  21. }
  22. }
  23.  
  24. ?>

skrypt łączy sie z bazą danych lecz w pliku np. (index.htm)

  1. <?php
  2. include 'ban.php';
  3. ?>
  4.  
  5.  
  6. treść strony która ma być niewidoczna


treść strony wyskakuje chociaż w bazie danych mam rekord z moim ip i powodem zbanowania i datą...

Z góry dziękuje za chęci i zmarnowany czas...
Go to the top of the page
+Quote Post
Statozor
post
Post #2





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 23.09.2006

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


Ma być index.php a nie index.html
I nie wywolujesz funkcji, ty ją tylko definiujesz
Go to the top of the page
+Quote Post
sowa75
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


dalej nic przpuszcza treść strony...
Go to the top of the page
+Quote Post
satsun
post
Post #4





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 15.10.2006

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


A wyskakuje o tym ze jestes zbanowany w ogole?
Go to the top of the page
+Quote Post
sowa75
post
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


Cytat(satsun @ 14.11.2006, 22:31:42 ) *
A wyskakuje o tym ze jestes zbanowany w ogole?


własnie nie przepuszcza normalną treść strony...
Go to the top of the page
+Quote Post
satsun
post
Post #6





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 15.10.2006

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


A gdzie wywolujesz funkcje ? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
skowron-line
post
Post #7





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


no dobra masz sprawdzanie a skad pobierasz te IP?? chyba zapomniales

  1. <?php
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3. ?>


ale oczywiscie moge sie mylic

edit: pomyleczka

Ten post edytował skowron-line 14.11.2006, 23:00:38
Go to the top of the page
+Quote Post
sowa75
post
Post #8





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


Cytat(skowron-line @ 14.11.2006, 22:59:27 ) *
no dobra masz sprawdzanie a skad pobierasz te IP?? chyba zapomniales

  1. <?php
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3. ?>


ale oczywiscie moge sie mylic

edit: pomyleczka


wiem ze tak sie pobiera ip...
ip biore nieważne skąd ważne zeby działało (musze je dodać do mysql co jush zrobiłem) próbowałem na swoim ip i przepuszcza treść strony wyglada na to ze jestem bardzo początkujący... (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)


Cytat(satsun @ 14.11.2006, 22:49:17 ) *
A gdzie wywolujesz funkcje ? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)


w lini 19 pliku ban.php

Ten post edytował sowa75 14.11.2006, 23:34:24
Go to the top of the page
+Quote Post
skowron-line
post
Post #9





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


  1. <?php
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3.  sprawdz_banned_ip($ip)
  4. ?>

i zobacz co sie stanie

Kod
w lini 19 pliku ban.php
hehe
to chyba nie wiesz jak sie wywoluje funkcje

Ten post edytował skowron-line 14.11.2006, 23:37:18
Go to the top of the page
+Quote Post
sowa75
post
Post #10





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


mam głupie pytanie bo już sie pogubiłem do którego pliku wkleić i gdzie bo jak do index.php przed text to wychodzi błąd:

Fatal error: Call to undefined function: sprawdz_banned_ip() in /var/www/sites/yoyo.pl/g/o/god-forces/banid/index.php on line 3

a do drugiego pliku niewiem gdzie to niepasuje...

nieśmiejcie sie ja dopiero poznaje php... (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
Go to the top of the page
+Quote Post
skowron-line
post
Post #11





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


  1. <?php
  2. include("ban.php");
  3. ?>
Go to the top of the page
+Quote Post
thornag
post
Post #12





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Skladajac Ci wszystko do kupy:

test.php
  1. <?php
  2. require_once('ban.php');
  3.  
  4. sprawdz_banned_ip($_SERVER['REMOTE_ADDR']);
  5. ?>



Dlaczego ? Napisales sobie funckje, bardzo ladnie. Teraz tresc tej funkcji trzeba dolaczyc do programu. Stad linia require_once('ban.php'). Samo dolaczenie definicji funkcji nie oznacza jej wywolania, informuje natomiast php ze taka funkcja istnieje i ze jak zostanie wywolana to sie ma odwolac do kodu wewnatrz niej. Dalej kiedy php przygotowane jest na taka funkcje (zna ja), mozemy ja wywolac podajac jako parametr IP wywolujacego, linijka sprawdz_banned_ip($_SERVER['REMOTE_ADDR']).

Oczywiscie includowac/requirowac (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) plik wyatrczy tylko raz, potrzebna jest tylko jedna definicja bo ona zawze jest taka sama. Czesto stosowana praktyka jest tworzenie plikow z funckjami typu, funckje.formularze.php, funckje.bazadanych.php, i dolaczanie ich na poczatku plikow w ktorych sa potrzebne.

Ogolnie poszukaj jakis kursow po necie, to o co pytasz to sa podstawy podstaw wiec spodziewam sie ze informacji na ten temat bedzie zatrzesnienie.
Go to the top of the page
+Quote Post
sowa75
post
Post #13





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


wielkie dzięki wszystko działa...

aha powiedzcie który z kursów jest lepszy...

http://www.leon.w-wa.pl/texts/kurs/



http://webmade.org/kursy/kurs_php/


wielkie dzięki za pomoc... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #14





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
aha powiedzcie który z kursów jest lepszy...

http://www.leon.w-wa.pl/texts/kurs/



http://webmade.org/kursy/kurs_php/

Czy to jest pytanie podchwytliwe? Jesli nie, to zajrzyj do jednego i do drugiego, a zobaczysz ze obydwa sa identyczne w tresci. Roznią sie tylko wygladem. No i jedem ma o jeden rozdzial wiecej od drugiego.
Go to the top of the page
+Quote Post
sowa75
post
Post #15





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


Tak to była taka mała próba szukając w internecie kursów znajduje ich bardzo dużo lecz większość nich nieróżni się niczym są pisane słowo w słowo tak samo przy wielu niema stopki z autorem (czy to nie jest nielegalne)...

Nie będe podawał przykładów...
Sprawdźcie w google.
Go to the top of the page
+Quote Post
skowron-line
post
Post #16





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


wiesz kiedys byl taki serial M.A.S.H i tam byl taki text
ogolnie sytuacja byla taka ze kolesia cos bolalo
i lekarz mowi
"-niech pan pije lampke koniaku dziennie
- a to pomoze??
- napewno nie zaszkodzi"

kumasz co chcem powiedziec
Go to the top of the page
+Quote Post
sowa75
post
Post #17





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2006

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


spoko rozumie może więcej tekstów o php niezaszkodzi ale i pomoże ale to jest jak dla mnie plagiat lub zwykła kradzież... (IMG:http://forum.php.pl/style_emoticons/default/blink.gif)
Go to the top of the page
+Quote Post
empathon
post
Post #18





Grupa: Zarejestrowani
Postów: 246
Pomógł: 31
Dołączył: 13.11.2006
Skąd: się znamy?

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


ja do pobrania ip uzywam czegos takiego. "$_SERVER['REMOTE_ADDR']" nie zawsze dziala

  1. <?php
  2. $ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
  3. ?>
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: 22.08.2025 - 23:20