Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  Küsimus ban scrpti kohta märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
SirShark
HV kasutaja

liitunud: 23.03.2007




sõnum 06.08.2012 18:59:14 Küsimus ban scrpti kohta vasta tsitaadiga

<?php

// IP to ban
$banned_ip = "1.2.3.4";

// user's IP is held in the $_SERVER variable
$user_ip = $_SERVER['REMOTE_ADDR'];

// check if user's IP matches banned IP
if($user_ip == $banned_ip) {
    echo "Access denied";
}

// multiple IP addresses?
$banned_ips = array("1.2.3.4", "4.3.2.1");

// check for match
foreach($banned_ips as $ip_ban) {
    if($user_ip == $ip_ban) {
        echo "Access denied";
    }
}

?>


Plaanis ülitada oma veebile ip ban script, probleem on selles et ma ei saa sinna sisse poogitud kuidagi file() functionit. Et kui ühendub IP aadres, siis asi kontrolliks seda txt vms failist, mitte ei oleks sinna ritta laotud.? oskab keegi suuna vähemalt näidata kuidas seda sinna sisse istututada?
Kommentaarid: 35 loe/lisa Kasutajad arvavad:  :: 2 :: 0 :: 29
tagasi üles
vaata kasutaja infot saada privaatsõnum
kullar
HV kasutaja
kullar

liitunud: 26.11.2006



Autoriseeritud ID-kaardiga

sõnum 06.08.2012 19:06:29 vasta tsitaadiga



<?php
// user's IP is held in the $_SERVER variable
$user_ip = $_SERVER['REMOTE_ADDR'];

//loeb failist ip'd arrayks. Iga rida peab olema eraldi ip
$_arrIps = file(mingifail.txt);

// check if user's IP matches banned IP
if(in_array($user_ip,$_arrIps)) {
    echo "Access denied";
    die();
}

?>


Koodi ei katsetanud, peast tegin.

_________________
Online Perekonna Eelarve, Keerukamad veebipõhised infosüsteemid jms
Kommentaarid: 27 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum
andresv
HV kasutaja

liitunud: 06.12.2004



Autoriseeritud ID-kaardiga

sõnum 07.08.2012 11:23:48 vasta tsitaadiga

sellega peaks ka vist arvestama:
tsitaat:
Each line in the resulting array will include the line ending, unless FILE_IGNORE_NEW_LINES is used, so you still need to use rtrim() if you do not want the line ending present.

http://php.net/manual/en/function.file.php
Kommentaarid: 5 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 5
tagasi üles
vaata kasutaja infot saada privaatsõnum
kullar
HV kasutaja
kullar

liitunud: 26.11.2006



Autoriseeritud ID-kaardiga

sõnum 07.08.2012 12:50:01 vasta tsitaadiga

Pane FILE_IGNORE_NEW_LINES parameeter file käsu teiseks parameetriks.

$_arrIps = file('mingifail.txt',FILE_IGNORE_NEW_LINES);

EDIT:
Selline oli töötav kood, mis toimis ilusti:

<?php
// user's IP is held in the $_SERVER variable
$user_ip = $_SERVER['REMOTE_ADDR'];

echo $user_ip;

//loeb failist ip'd arrayks. Iga rida peab olema eraldi ip
$_arrIps = file('ipd.txt',FILE_IGNORE_NEW_LINES);

// check if user's IP matches banned IP
if(in_array($user_ip,$_arrIps)) {
    echo "Access denied";
    die();
}

?>

_________________
Online Perekonna Eelarve, Keerukamad veebipõhised infosüsteemid jms
Kommentaarid: 27 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 25
tagasi üles
vaata kasutaja infot saada privaatsõnum
19Mart94
HV kasutaja

liitunud: 22.06.2010



Autoriseeritud ID-kaardiga

sõnum 07.08.2012 13:38:21 vasta tsitaadiga

kullar kirjutas:
Pane FILE_IGNORE_NEW_LINES parameeter file käsu teiseks parameetriks.

$_arrIps = file('mingifail.txt',FILE_IGNORE_NEW_LINES);

EDIT:
Selline oli töötav kood, mis toimis ilusti:

<?php
// user's IP is held in the $_SERVER variable
$user_ip = $_SERVER['REMOTE_ADDR'];

echo $user_ip;

//loeb failist ip'd arrayks. Iga rida peab olema eraldi ip
$_arrIps = file('ipd.txt',FILE_IGNORE_NEW_LINES);

// check if user's IP matches banned IP
if(in_array($user_ip,$_arrIps)) {
    echo "Access denied";
    die();
}

?>

Miks enne die funktsiooni echo-t kasutada (kood töötab, selles pole probleem) icon_question.gif
php:
  1. <?php
  2. // user's IP is held in the $_SERVER variable
  3. $user_ip = $_SERVER['REMOTE_ADDR'];
  4.  
  5. echo $user_ip;
  6.  
  7. //loeb failist ip'd arrayks. Iga rida peab olema eraldi ip
  8. $_arrIps = file('ipd.txt',FILE_IGNORE_NEW_LINES);
  9.  
  10. // check if user's IP matches banned IP
  11. if(in_array($user_ip,$_arrIps)) {
  12.     die("Access denied");
  13. }
  14.  
  15. ?>
Kommentaarid: 33 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 31
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  Küsimus ban scrpti kohta
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.