es131245 Posted June 17, 2009 Share Posted June 17, 2009 I want to use txt ip ban list but my code doent work here it is$ip=getenv("REMOTE_ADDR");if ($ip !="::1"){$open_ban_list=fopen("ban_list.txt","r") or die("Cant open <i>BAN LIST</i>");while (! feof($open_ban_list)){$banned_ips=fgets($open_ban_list,1024);if ($ip == $banned_ips) {die ("you $ip is banned");}echo $banned_ips;}fclose($open_ban_list);$access_log_open=fopen("log.txt",a) or die("Cant open <i>ACCESS LOGS</i>");fwrite($access_log_open,date("H:i").date(":s")." ".date("j/n/Y")." ".$ip."\n");fclose($access_log_open);}?>All I get is echo $banned_ips;but die ("you $ip is banned"); doent "die" Link to comment Share on other sites More sharing options...
justsomeguy Posted June 17, 2009 Share Posted June 17, 2009 First, I don't think that REMOTE_ADDR is an environment variable. Have you printed $ip to verify it contains the right data? You should probably get that from $_SERVER instead.Second, you're comparing the IP with the entire contents of the text file. That's only going to work if the text file contains a single IP. I don't know how you're saving IPs in the file, but you need to break up the list of IPs and compare each one with the IP you're testing against. Link to comment Share on other sites More sharing options...
es131245 Posted June 17, 2009 Author Share Posted June 17, 2009 ive usedecho $banned_ips;for comparing and it echoed fine but its still doent work and i think ive tryed $_SERVERbut i got long banned ip list... now ive deleted ip banners cuz its realy alot of people doent have current ip... Link to comment Share on other sites More sharing options...
justsomeguy Posted June 17, 2009 Share Posted June 17, 2009 Have you printed the IP you're testing against? Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.