Thank you very much, it's working fine. Lab.
"Jason Giangrande" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Labunski wrote: > | $ip = getenv ("REMOTE_ADDR"); > | > | function kick() { > | $file_ip = file("log.txt"); > | foreach($file_ip as $value_ip ) { > | $kick .= "$value_ip"; > | } > | return $kick; > | } > | if ($ip == kick()){ > | echo "Sorry, the access is denied."; > | > | exit; > | } > > In the function you seem to be appending all the ip addresses in the > file to $kick. When you return kick it will hold all of the ips and not > just and will therefore not be equal to $ip. > > You might want to try something like this: > > $ip = getenv ("REMOTE_ADDR"); > > function kick($ip) { > ~ $file_ip = file("log.txt") or die("Can't open file"); > ~ foreach ($file_ip as $value_ip) { > $value_ip = preg_replace("/\n/", "", $value_ip); > ~ if ($ip == $value_ip) { > return true; > } > ~ } > ~ return false; > } > > if (kick($ip)) { > echo "Sorry, the access is denied."; > } > > It seems each ip address in the $file_ip has a new line on the end too, > so you need to remove that before the current ip address in $ip will > match anything that is in the file. > > Hope this helps. > > - -- > Jason Giangrande <[EMAIL PROTECTED]> > http://www.giangrande.org > http://www.dogsiview.com > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.4 (GNU/Linux) > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org > > iD8DBQFAWN6GjfevYzbk95IRAvx3AJ9jVbiSI0gyf50AkeJD63Z8LHT0ggCfQEqE > RGunvEgTHkKJylmnywLxseM= > =LJd1 > -----END PGP SIGNATURE----- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php