Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Разбить IP-адрес на части
 
 автор: zateinik   (14.11.2006 в 23:13)   письмо автору
 
 

Всем доброго вечера, начинаю заниматься PHP и решил написать простенький скрипт для своей сети. Естественно не обошлось без вопросов:

Пользователь вводит в форму свой IP адрес который обрабатывается скриптом. Мне надо возвратить из адреса, например 192.168.5.134, переменные 5 и 134 и записать их в переменные $segment и $number. Вроде все легко, но если адрес будет например 192.168.165.21? Как мне возвратить данные между последними 2-мя точками и от последней точки до конца и записать их в эти гребаные переменные? =(

   
 
 автор: if   (14.11.2006 в 23:23)
 
   для: zateinik   (14.11.2006 в 23:13)
 


<?
$ip 
"192.168.165.21";
list(,,
$segment$number) = explode("."$ip);
?>

   
 
 автор: if   (14.11.2006 в 23:23)
 
   для: zateinik   (14.11.2006 в 23:13)
 


<?
$ip 
"192.168.165.21";
list(,,
$segment$number) = explode("."$ip);
?>

   
 
 автор: Zateinik   (14.11.2006 в 23:36)   письмо автору
 
   для: zateinik   (14.11.2006 в 23:13)
 

Parse error: parse error, unexpected T_LIST in ...

   
 
 автор: Unkind   (15.11.2006 в 00:22)   письмо автору
 
   для: Zateinik   (14.11.2006 в 23:36)
 


<?php
$array 
explode("."getenv("REMOTE_ADDR"));
$segment $array[2];
$number $array[3];
?>

   
 
 автор: Zateinik   (15.11.2006 в 00:38)   письмо автору
 
   для: zateinik   (14.11.2006 в 23:13)
 

Спасибо большое, есть еще вопрос:

Как правильно составить скрипт если надо возвращать разные значения переменной $gateway, которые зависят от того находится ли $number в промежутках 1-128, 130-204, 206-254.
Тоесть:
$gateway=0 если $ip=от 1 до 128
$gateway=129 если $ip=от 130 до 204
$gateway=205 если $ip=от 206 до 254

   
 
 автор: Trianon   (15.11.2006 в 01:12)   письмо автору
 
   для: Zateinik   (15.11.2006 в 00:38)
 

Вы ничего не напутали? Так пространство адресов обычно не разбивают.

   
 
 автор: Zateinik   (15.11.2006 в 01:16)   письмо автору
 
   для: Trianon   (15.11.2006 в 01:12)
 

я для примера

   
 
 автор: Unkind   (15.11.2006 в 14:32)   письмо автору
 
   для: Zateinik   (15.11.2006 в 01:16)
 


<?php
if($number >= && $number <= 128$gateway 0;
elseif(
$number >= 130 && $number <= 204$gateway 129;
//И т.д.
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования