Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 30.08.2003 Ostrzeżenie: (0%)
|
Troche lamka jestem, probowalem w ten sposob
Zalozmy ze plik "txt" ma taka strukture: Costam||costam2||ip [php:1:ca2cb3213d]<?php $plik = file("baza.txt"); $total=count($plik); for ($index=0; $index < $total; $index++) { $grupa = split("|", chop($plk[$index])); $split = explode("||", $plik[$index]); $ip = "$REMOTE_ADDR"; if($ip=$split[2]){ echo"You have been banned (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) "; } elseif{ a tutaj skrypt do wykonania jesli jego ip nie ma w bazie } } ?>[/php:1:ca2cb3213d] Skrypt nie dziala tak jakbym chcial (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Nawet jesli nie ma kogos ip w bazie to wyskakuje ze You have been banned, pomozcie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) (teraz pisalem skrypt z glowy, moze byc jhakis parse error, chodzi o to zeby przedstawic wam jak chcialem to zrobic) Z gory dzieki za pomoc :Pozdrawiam: |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 0 Dołączył: 12.08.2003 Skąd: Kalisz Ostrzeżenie: (0%)
|
http://www.phpflash.hostm.pl/articles.php?...?topic=ip_block ten skrypt powinien Ci dzialac poprawnie
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%)
|
Po pierwsze nie ten operator w:
[php:1:25fdeca8bc]<?php if($ip=$split[2]){ ?>[/php:1:25fdeca8bc] Zamień = na == Po drugie nie wiem po co robisz: [php:1:25fdeca8bc]<?php $grupa = split("|", chop($plk[$index])); ?>[/php:1:25fdeca8bc] ale nie wnikam w to, może Ci to gdzieś jest przydatne. Natomiast w: [php:1:25fdeca8bc]<?php $split = explode("||", $plik[$index]); ?>[/php:1:25fdeca8bc] też wypadałoby usunąć znak końca linii chopem. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Stalowa Wola Ostrzeżenie: (0%)
|
no i "elseif" wydaje mi sie ze pisze sie osobno:P else if?(IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%)
|
Cytat no i "elseif" wydaje mi sie ze pisze sie osobno:P else if?(IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Taa, a ja radze poczytać manual. Cytat W php można też napisać 'else if' (dwoma słowami) zamiast 'elseif' (jednym słowem). Z punktu widzenia składni języka, wyrażenia te różnią się od siebie (jeśli znasz się na C, jest to ta sama różnica co w C), jednak wynik ich działania jest ten sam.
BTW: zaciekawiło mnie "jeśli znasz się na C, jest to ta sama różnica co w C" - co to za różnica? |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 2 Dołączył: 25.08.2003 Skąd: Lublin Ostrzeżenie: (0%)
|
ja bym poprawil jedna rzecz..
z: $ip="$REMOTE_ADDR"; na: $ip=getenv("REMOTE_ADDR"); teraz bedzie lepiej:) |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%)
|
Cytat ja bym poprawil jedna rzecz..
z: $ip="$REMOTE_ADDR"; na: $ip=getenv("REMOTE_ADDR"); teraz bedzie lepiej:) W sumie to chyba bardziej zalecane jest: [php:1:d850181227]<?php $ip = $_SERVER['REMOTE_ADDR']; ?>[/php:1:d850181227] ale i tak powinno wyjść na jedno. :wink: |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 06:34 |