Kezdőoldal » Számítástechnika » Programozás » IP Bann php-ban!?

IP Bann php-ban!?

Figyelt kérdés
Olyan egyszerű script érdekelne amit ha az index.php-ba elhelyezek akkor kitudok vele tiltani bizonyos embereket az oldalról!

2012. máj. 10. 21:31
 1/9 coopper ***** válasza:

Szia.


Itt egy funkcio az ip "megszerzésére" a többit rád bizom (adatbázis, megnyitás, konektálás, ip keresés, ha megvan kivagytiltva oldal behozása)


function getip() {

if (@getenv("HTTP_X_FORWARDED_FOR")){

$ip = @getenv("HTTP_X_FORWARDED_FOR");

} else {

$ip = @getenv("REMOTE_ADDR");

}

if (strstr( $ip, "," ) ) {

$elvalaszto = ",";

$ipcim = strtok ($ip, $elvalaszto);

$result=$ipcim;

} else {

$result=$ip;

}

return $result;

}


Sok sikert.

Üdv.

2012. máj. 10. 21:38
Hasznos számodra ez a válasz?
 2/9 anonim ***** válasza:
Csak egy megjegyzés: IP bannal nem sokat érsz, mivel az emberek kb 96%ának dinamikus IP címe van. valami olyan bannolási módszer kellene (ha létezik) ami egy cookie-t helyez el a bannolt személy böngészőjében. hozzá nem értő egyedeket ezzel könyebb lenne kitiltani.
2012. máj. 10. 21:42
Hasznos számodra ez a válasz?
 3/9 anonim ***** válasza:

Sütit törölni is nevetségesen könny, sőt ha privát böngészést indít, akkor magától a böngésző bezárása után törlődnek is.


Nincs jó megoldás a tiltásra.

2012. máj. 10. 21:46
Hasznos számodra ez a válasz?
 4/9 A kérdező kommentje:

Tudom, nem sokat ér ha IP-t kitiltok, de muszáj fél megoldásokat is alkalmaznom.

IP címek megvannak, nem szükséges beszereznem őket.

Megadott ip címeket szeretnék tiltani az oldaltól.

Bemásolom az IP-ket a scriptbe és az index.php nem töltődik be az illetőnél. Valami ilyesmi egyszerű dolog érdekelne.

Nem vagyok valami zseni php scriptel

2012. máj. 10. 21:47
 5/9 anonim ***** válasza:

A fenti cuccal kb ennyi:


if($tiltottpip == getip()){

echo "Nem.";

die();

}


De persze jobb lenne tömbökkel megoldani... Ehhez most adatbázis sem kell.

2012. máj. 10. 21:51
Hasznos számodra ez a válasz?
 6/9 coopper ***** válasza:

Bocsánatot kérek, mivel félreérthetően fogalmaztam.


A "beszerzés" itt azt jelenti, hogy az oldaladhoz kapcsolódó userek IP cimét kapod, meg.


Azt már csak össze kell hasonlitani a Kitiltottak listájával és ha van egyezés akkor nem csinálni semmit sem.


Ezért irtam, hogy a többi a TE dolgod, mert, a legegyszerűbb az adatzbázis dolog (létrehozol egy adatbázist a kitiltottak IP cimeivel, és abban keresel, ha van találat akkor az éppen kapcsolódó user ki van tiltva), de megoldás lehet még a PHP filében tárolt IP

cimék, és azt includolni.


Sok sikert.

Üdv.

2012. máj. 10. 21:55
Hasznos számodra ez a válasz?
 7/9 coopper ***** válasza:

Szia.


Tessék, fapados módszer de müködik és egyszerű (kipróbáltam localhoston is én inteneten is) :


<?php

function getip() {

if (@getenv("HTTP_X_FORWARDED_FOR")){

$ip = @getenv("HTTP_X_FORWARDED_FOR");

} else {

$ip = @getenv("REMOTE_ADDR");

}

if (strstr( $ip, "," ) ) {

$elvalaszto = ",";

$ipcim = strtok ($ip, $elvalaszto);

$result=$ipcim;

} else {

$result=$ip;

}

return $result;

}


// IP-ban :

$userip=getip();

if("192.168.1.1" == $userip){die();}

if("192.168.1.1" == $userip){die();}

//IP-ban vége

// További utasitasok


?>


Értelemszerűen : a "192.168.1.1" javitod a tiltandó IP-re.


Illetve ha több IP tiltás van ezeket a sorokat annyiszor ismétled ahánysor csak akarod :

if("192.168.1.1" == $userip){die();}


Sok sikert.

Üdv.

2012. máj. 11. 15:33
Hasznos számodra ez a válasz?
 8/9 A kérdező kommentje:
köszi
2012. máj. 12. 09:05
 9/9 anonim ***** válasza:

foreach ($tiltott_ip_cimek as $ip_cim){


if ($_SERVER['REMOTE_ADDR']==$ip_cim){

die('Az ip címed ki van tiltva!');

}


}


értelemszerűen a $tiltott_ip_cimek egy tömb ami az ip címeket tartalmazza!

2012. nov. 12. 16:20
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!