Автор Тема: Как положить файл в массив и проверить из него строки??  (Прочитано 1969 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Есть файл: log.dat
В нем строки
Пример:
127.0.0.1
127.0.0.2
127.0.0.3
127.0.0.4
127.0.0.5
--------------------
Мне нужно проверить все эти ip по очереди и если ip в этом файле  совпадает с ip который я вычислил :) с помощью


if (getenv(\'HTTP_X_FORWARDED_FOR\'))

$ip=getenv(\'HTTP_X_FORWARDED_FOR\');

else { 
$ip=getenv(\'REMOTE_ADDR\');
}


То пусть например выдают мессагу, "Привет", а если ip
не совпал тогда пусть выводит, "Я тя незнаю!" :)

И ещё вопрос!
Чуть изменённый вариант первого!
Например в этом - же файле есть строки:
Пример:
127.0.0.1#1
127.0.0.2#1
127.0.0.3#1
127.0.0.4#1
127.0.0.5#1
---------------
где после ip через # идёт значение 1.
Тя вопрос!
Проверка всех ip в файле!
И если ip совпадает тогда к этой иденице ничего не
прибавлять! А если не совпадает, тогда дописать этот Ip
в базу файла ( в его конец ) а за ним значение +1.
Тоесть была иденица а стала двойка!
Пример:
127.0.0.1#1
127.0.0.2#1
127.0.0.3#1
127.0.0.4#1
127.0.0.5#1
127.0.0.9#2 <<-- ( это новый ip )

Так и будет идти пока не появится новый ip, а потом значение
увеличится 2+1 = 3 ( железная логика -) ) ну и так далее!
Спасибо!

Оффлайн Million

  • Super hero
  • Постоялец
  • ***
  • Сообщений: 185
  • +0/-0
  • 2
    • Просмотр профиля
IP адресс штука переменчивая в Dial-Up  изменяется при каждом подключении и тот кто был у тебя 1 раз с одним IP, второй раз скорее всего будет с другим.
А скрипт будет выглядеть примерно так:
[PHP]
$fil="имя файла";
if (getenv(\'HTTP_X_FORWARDED_FOR\')) $ip=getenv(\'HTTP_X_FORWARDED_FOR\');
else $ip=getenv(\'REMOTE_ADDR\');
$array=file($fil);
$siz=sizeof($array);
for ($i=0; $i<=$siz-1; $i++)
{if ($array[$i]==$ip) {echo "Привет";
$i=$siz+1;}}
if ($i!=$siz+1) echo "Я тя незнаю!";
?>

Работоспособность не проверял:)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28