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

Форум PHP

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

 

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

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

тема: А можно точки удалить?
 
 автор: Karum   (08.07.2005 в 21:21)   письмо автору
 
 

А можно с IP удалить точки?
192.942.934.955
192942934955 - чтобы было так...

   
 
 автор: cheops   (08.07.2005 в 21:28)   письмо автору
 
   для: Karum   (08.07.2005 в 21:21)
 

Можно, только вы потом IP-адрес не восстановите, так как он бывает ещё и таким
127.1.11.127

Как решить число 127111127 - это 127.1.11.127 или 127.11.1.127?

Вы же с MySQL работате? Заведите поле BIGINT и используйте INET_ATON(), которая принимает IP-адрес а возвращает целое число, если проблемы с тем, адрес не доживает до базы данных - съэмулируйте работу функции при помоищи PHP, вычислив для адреса XXX.YYY.ZZZ.WWW это число по формуле
XXX*256**3 + YYY*256**2 + ZZZ*256 + WWW


Для обратного преобразования числа в IP-адрес предназначена функция INET_NTOA()

   
 
 автор: Karum   (08.07.2005 в 21:56)   письмо автору
 
   для: cheops   (08.07.2005 в 21:28)
 

Понимаете я не думаю, что может попаться такой случай (а хотя таких много =)) ) "Как решить число 127111127 - это 127.1.11.127 или 127.11.1.127?", точнее проверка идет на то, чтобы, пока пользователь в интернете и проголосовал 1 раз он не мог продолжать голосование. Так, что это абсолютно не важно!

Можете пожалуйста поподробней на писать про функцию INET_ATON()
$REMOTE_ADDR - он равен 127.1.11.127 , то что в функции надо прописать чтобы,
выдало результат 127111127

   
 
 автор: Karum   (08.07.2005 в 22:07)   письмо автору
 
   для: Karum   (08.07.2005 в 21:56)
 

функция INET_ATON() или INET_TONA()

типа этого?


<?
$REMOTE_HOST
=($REMOTE_ADDR);

$REMOTE_HOS=INET_ATON("$REMOTE_HOST");

echo 
"$REMOTE_HOS";
?>

   
 
 автор: Саня   (08.07.2005 в 22:39)   письмо автору
 
   для: Karum   (08.07.2005 в 22:07)
 

Нет. Таких функций не существует в PHP. Это встроенные функции mysql
<?
print(mysql_query("select INET_ATON('127.0.0.1')"));
?>

   
 
 автор: Karum   (08.07.2005 в 22:44)   письмо автору
 
   для: Саня   (08.07.2005 в 22:39)
 

Ну вообще спасибо! я решил так (хоть и геморойней!)


<?
$REMOTE_HOST
=($REMOTE_ADDR);

$iparr split ("\."$REMOTE_HOST);

echo 
"$REMOTE_HOST <br><br>";
echo 
"$iparr[0]$iparr[1]$iparr[2]$iparr[3]"

?>

   
 
 автор: Karum   (08.07.2005 в 22:55)   письмо автору
 
   для: Karum   (08.07.2005 в 22:44)
 

Неработало потому что точка является служебным символом. А там....

   
 
 автор: Евгений Петров   (08.07.2005 в 23:43)   письмо автору
 
   для: Karum   (08.07.2005 в 22:55)
 

А если представлять IP так:

127.000.000.001

то тогда можно будет восстановить его.

   
 
 автор: bars   (17.09.2005 в 14:43)
 
   для: Евгений Петров   (08.07.2005 в 23:43)
 

дХТДПН.
еУФШ ЦЕ inet_aton Ч mysql.
ip2long, long2ip Ч php.

   
Rambler's Top100
вверх

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