ďťż
Podstrony
|
telcocafeWitamMam problem ze skryptem banowania Chodzi mi o cos takiego ze jesli uzytkownik jest na liscie zbanowanych to wywietla mu napis powiedzmy Masz Bana !!! i nie mozewejsc na strone a jesli nie ma go na liscie strona otwieta sie normalnie :o Tu mam kod nie za bardzo dzialajacy poniewaz gdy jestesmy na liscie zbanowanych to wyswietla tylko ze mamy bana ale wszytko sie dobrze laduje :blink: <? $adres = array("74.31.242.123"); if (in_array($REMOTE_ADDR, $adres)) { echo ("Zostałeś zbanowany przez jednego z Administratorów"); } ?> a jeszcze lepiej bylo by jak numery ip byly wczytywane np z pliku ban.txt Pozdrawiam :) Dodaj funkcje die lub exit po echo.... i caly skrypt sprawdzajacy wstaw na samym poczatku strony... <? $adres = array("74.31.242.123"); if (in_array($REMOTE_ADDR, $adres)) { echo ("Zostałeś zbanowany przez jednego z Administratorów"); die; } ?> Użytkownik max_damage edytował ten post 14 maj 2005, 16:15 Dodaj funkcje die lub exit po echo.... i caly skrypt sprawdzajacy wstaw na samym poczatku strony... <? $adres = array("74.31.242.123"); if (in_array($REMOTE_ADDR, $adres)) { echo ("Zostałeś zbanowany przez jednego z Administratorów"); die; } ?> Zrobiłem i wyszło mi takie coś :D (wszystko pieknie dziala) <? $adres = array(''); if (in_array($REMOTE_ADDR, $adres)) { die('<center><b>Zostałe¶ zbanowany przez jednego z Administratorów</b></center>'); } ?> A jak to przerobic zeby wczytywalo bany z pliku tekstowego chodzi mi oto ze w pliku tym byla by cala banlista :o Proponowałbym tak: <? $banlista = "banlista.txt"; $otworz = fopen($banlista, "r"); if (!$otworz) { die ("Nie można otworzyć pliku"); } $adres = fread($otworz, filesize($banlista)); if (in_array($REMOTE_ADDR, $adres)) { die('<center><b>Zostałe¶ zbanowany przez jednego z Administratorów</b></center>'); } ?> Nie ręczę za poprawność kodu, najlepiej najpierw go sprawdzić. Jakby coś nie chciało działać pisać na PW to pomyślę ;) Co do otwierania pliku proponował bym raczej, aby użyć funkcji file(), w pliku każdy IP będzie był w nowej linijce wtedy wpisujesz $adresy_ip = $file("plik_z_adresami.txt"); i masz tablicę z adresami ip. I nie $REMOTE_ADDR, a $_SERVER['REMOTE_ADDR'] Użytkownik dodek edytował ten post 17 maj 2005, 06:45 $adresy_ip = $file("plik_z_adresami.txt"); I nie $REMOTE_ADDR, a $_SERVER['REMOTE_ADDR'] Gall anonim uzylem twojego kodu i...: Warning: in_array(): Wrong datatype for second argument in c:\usr\krasnal\www\cms\index.php on line 68 Nie wiem co to moze byc :/ Gall anonim uzylem twojego kodu i...: Warning: in_array(): Wrong datatype for second argument in c:\usr\krasnal\www\cms\index.php on line 68 Nie wiem co to moze byc :/ To tak, niedosc ze tamten blad zostal to jest jeszcze nowy: Warning: file() expects parameter 1 to be string, resource given in c:\usr\krasnal\www\cms\index.php on line 67 file() Warning: in_array(): Wrong datatype for second argument in c:\usr\krasnal\www\cms\index.php on line 68 to nadal jest a dobre parametry przesyłasz ??? oblookaj maniuala, albo daj gdzieś cały kod <? $banlista = "modules/bany.txt"; $otworz = fopen($banlista, "r"); if (!$otworz) { die ("Nie można otworzyć pliku"); } $adres = fread($otworz, file($banlista)); if (in_array($_SERVER['REMOTE_ADDR'] , $adres)) { die('<center><b>Zostałe¶ zbanowany przez jednego z Administratorów</b></center>'); } ?> manual php napisał :D string fread ( resource uchwyt, int długość ) już wiesz o co chodzi ?? nie ?? to poczytaj o in_array :) No super a moglby ktos mi troszke pomoc i poskladac caly kod do kupy i umiescic go w tym temacie :( ?? P.S Wilkie dzieki dla kazdego kto zainsteresowal sie tym tematem :) No wlasnie, to forum jest zeby pomagac a nie odsylac do google, manuala PHP itp. :) no jasne i jeszcze mamy za Was myśleć. Po co mam przepisywać to co jest w manualu ?? w manualu masz wszelkie info o php więc zamiast zawracać dupsko na forum poczytaj tam i wsio będziesz wiedział Hm.. no to jeszcze z tym pojdz na reke a potem juz bede czytal manuala :P Źle :P Jesli jest funkcja to nie ma dolara przed nią. $adresy_ip = file("plik_z_adresami.txt"); Wtedy cała zawartość pliku jest wczytywana do tablicy, gdzie każda linijka tekstu została wgrana do następnego z koleji elementu tablicy. Potem tylko przeglądasz liste IP (czyli tą tablice) sprawdzając czy adres IP tego, króry wlaz na strone jest równy z jednym z tych zbanowanych. Ale to chyba potrafisz :D Złoż ktos caly ten kod do kupy :( nadal sa bledy :( Warning: in_array(): Wrong datatype for second argument in /home/accounts_g/gruchi/public_html/ban.php on line 9 Napisz ktos jak to zrobic , ja tez mam problem z in_array() <? $banlista = "bany.txt"; $adres =file($banlista) or die("Nie można otworzyć pliku"); $adres=str_replace(array("\r","\n"),"",$adres) ; if (in_array($_SERVER['REMOTE_ADDR'] , $adres)) { die('<center><b>Zostałe¶ zbanowany przez jednego z Administratorów</b></center>'); } ?> nie zapominajmy, ze wczytujac z pliku przez file, wczytujemy tez znaki \r i \n :) trzeba je usunac, bo w adresie ich nie ma B) Użytkownik nav edytował ten post 19 maj 2005, 15:42 Niestety nadal coś nie działa pisze ze nie moze otworzyc pliku ? Użytkownik Gruchi edytował ten post 20 maj 2005, 14:06 Niestety nadal coś nie działa pisze ze nie moze otworzyc pliku ? szykowac sie bedzie jak uda mi sie zrobic to banowanie ale jak na razie to mi nie idzie :( nie moge naprawic tego bledu :( kurde Gruchi nie kopiuj kodu jaki ci podaja bo tam jest "bany.txt" a ty chcesz banlista.txt nav czego rotflujesz :D Jak sie kopiuje kod z "bany.txt" a ma sie banlista.txt i mowi Aaa! Pomocy nie dziala mi kod, utworzylem banlista.txt, a nadal nie dziala oto moj kod: <? $banlista = "bany.txt"; $adres =file($banlista) or die("Nie można otworzyć pliku"); $adres=str_replace(array("\r","\n"),"",$adres) ; if (in_array($_SERVER['REMOTE_ADDR'] , $adres)) { die('<center><b>Zostałe¶ zbanowany przez jednego z Administratorów</b></center>'); } ?> |
|||
Sitedesign by AltusUmbrae. |