Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: PHP: Bannausfunktio

Matti Kaijomaa [20.10.2003 08:32:58]

#

Tämmönen bannausfunktio, joka kattoo "bannilista.txt" filusta, onko kävijä bannattu vai ei. Jos kävijä on bannattu, siirretään hänet sivulle, joka sisältää jäkätystä: "olet bannittu...". Ihan kätsy, itte käytän tätä. Bannaaminen tapahtuu laittamalla bann(); siihen kohtaan, mistä eteenpäin bannatuilla ei ole asiaa. Mitään chmodeja ei tartte tehä.

ip:n hakufunktio ja itse bannausfunktio

<?php
function getip(){
if($_SERVER){
if($_SERVER["HTTP_X_FORWARDED_FOR"]){
$rip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}elseif($_SERVER["HTTP_CLIENT_IP"]){
$rip = $_SERVER["HTTP_CLIENT_IP"];
}else{
$rip = $_SERVER["REMOTE_ADDR"];
}
}else{
if(getenv("HTTP_X_FORWARDED_FOR")){
$rip = getenv("HTTP_X_FORWARDED_FOR");
}elseif (getenv("HTTP_CLIENT_IP")){
$rip = getenv("HTTP_CLIENT_IP");
}else {
$rip = getenv("REMOTE_ADDR");
}
}
return $rip;
}

function bann() {
$ip = getip();
$lista = file("bannilista.txt");
foreach ($lista as $banni) {
if (strstr($banni, $ip)==true) {
  header("Location: bannattu.php");
  }
 }
}
?>

bannilista.txt

255.255.255.0
255.255.255.0
255.255.255.0
jne...

Matti Kaijomaa [20.10.2003 08:37:29]

#

eli kommenttia tähän suuntaan, kiitos :D

Antti Laaksonen [20.10.2003 17:04:59]

#

IP:n bannaamisesta ei ole yleensä paljonkaan hyötyä, kun useammilla se vaihtuu joka yhteydenottokerralla. Ja aiheellista olisi myös mainita, että getip-funktio on kopioitu täältä: http://mureakuha.com/koodikirjasto/PHP/357

T.M. [21.10.2003 14:16:05]

#

mitä varten toi bannaaminen on funktiossa? ei mitään iloa.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta