Проблема с вызовом inet_pton () в рамках Zend - PullRequest
1 голос
/ 23 мая 2009

У меня проблема с использованием Zend Framework (для API данных YouTube). Я создал очень простой PHP-скрипт для загрузки YT-видео с помощью этого API, и он работает практически везде - я пробовал его на 3 разных машинах (и Linux, и WinXP). Но после ввода его на 4-й машине я получил эту ошибку:

Error:  inet_pton() [function.inet-pton]: Unrecognized address www.google.com    
Error type/ Nr.:    Warning - 2  
File:   /Zend/Validate/Ip.php    
Line:   62   
Line 62 source:  } else if ((@inet_pton($value) === false) ||(inet_ntop(@inet_pton($value)) !== $valueString)) {

Я почти уверен, что это какой-то дефект конфигурации, но что не так? (PHP-скрипт абсолютно одинаков во всех случаях)

1 Ответ

1 голос
/ 22 июня 2009

Измените /library/Zend/Validate/Ip.php между строками 62 и 65 следующим образом:

} else if ((@inet_pton(gethostbyname($value)) === false) 
|| (inet_ntop(@inet_pton(gethostbyname($value))) !== $valueString)) {
        $this->_error();
        return false;
    }

$ value должно быть IP-адресом, а не именем хоста.

...