php_network_getaddresses: getaddrinfo failed

Тема в разделе "PHP", создана пользователем afonya09, 25 ноя 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. afonya09

    afonya09

    Регистр.:
    31 янв 2009
    Сообщения:
    260
    Симпатии:
    18
    Есть скрипт

    function ping ($url, $blogname, $blogurl) {

    $tb_send='<?xml version="1.0" encoding="utf-8"?>
    <methodCall>
    <methodName>weblogUpdates.ping</methodName>
    <params>
    <param>
    <value>'.$blogname.'</value>
    </param>
    <param>
    <value>'.$blogurl.'</value>
    </param>
    </params>
    </methodCall>';

    $target=parse_url($url);
    //print_r($target);
    $tb_sock = fsockopen($target["path"], 80);
    fputs($tb_sock, "POST ". $target["path"]. " HTTP/1.1\r\n");
    fputs($tb_sock, "User-Agent: The Incutio XML-RPC PHP Library (multicall client)\r\n");
    fputs($tb_sock, "Host: ". $target["path"]. "\r\n");
    fputs($tb_sock, "Content-Type: text/xml\r\n");
    fputs($tb_sock, "Content-length: ". strlen($tb_send). "\r\n");
    fputs($tb_sock, "Connection: close\r\n\r\n");
    fputs($tb_sock, $tb_send);
    // Gather result
    while (!feof($tb_sock)) {
    $response .= fgets($tb_sock, 128);
    }
    // Close socket
    fclose($tb_sock);
    // Did the trackback ping work
    strpos($response, '<error>0</error>')? $return = true: $return = false;
    // send result
    return $return;
    }

    При вызове выдает

    Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/www/гыыы/сайт.ru/engine/include/function.php on line 433

    Warning: fsockopen() [function.fsockopen]: unable to connect to ping.blogs.yandex.ru/RPC2:80 (Unknown error) in /home/www/гыыы/сайт.ru/engine/include/function.php on line 433

    Warning: fputs(:( supplied argument is not a valid stream resource in /home/www/гыыы/сайт.ru/engine/include/function.php on line 434

    Warning: fputs(:( supplied argument is not a valid stream resource in /home/www/гыыы/сайт.ru/engine/include/function.php on line 435

    Warning: fputs(:( supplied argument is not a valid stream resource in /home/www/гыыы/сайт.ru/engine/include/function.php on line 436

    Warning: fputs(:( supplied argument is not a valid stream resource in /home/www/гыыы/сайт.ru/engine/include/function.php on line 437

    Warning: fputs(:( supplied argument is not a valid stream resource in /home/www/гыыы/сайт.ru/engine/include/function.php on line 438

    Движек лайфлтрит. Не могу понять что ему не нравится..
    Может есть у кого рабочий пингатор??
     
  2. steel_HILL

    steel_HILL Постоялец

    Регистр.:
    15 апр 2010
    Сообщения:
    53
    Симпатии:
    14
    PHP:
    $target=parse_url($url);
    //print_r($target);
    $tb_sock fsockopen($target["host"], 80$errno$errstr30);
    if (!
    $fp) {
        echo 
    "$errstr ($errno)<br />\n";
    } else {
    $sendstr "POST "$target["path"]. " HTTP/1.1\r\n";
    $sendstr .= "User-Agent: The Incutio XML-RPC PHP Library (multicall client)\r\n";
    $sendstr .= "Host: "$target["host"]. "\r\n";
    $sendstr .= "Content-Type: text/xml\r\n";
    $sendstr .= "Content-length: "strlen($tb_send). "\r\n";
    $sendstr .= "Connection: close\r\n\r\n";
    $sendstr .= $tb_send;
    fputs($tb_sock$sendstr);
    }
    // Gather result
    while(!feof($tb_sock)){
    $response .= fgets($tb_sock1024);
    }
    // Close socket
    fclose($tb_sock);
    плюс еще строку в переменной $tb_send желательно отсылать в utf-8, то есть либо сохранять в файл с этой кодировкой (без BOM) либо конвертировать перед отсылкой -

    PHP:
    $sendstr .= utf8_encode ($tb_send);
     
  3. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.450
    Симпатии:
    1.244
    Еще стоит заменить
    PHP:
    strpos($response'<error>0</error>')? $return true$return false;
    на
    PHP:
    strpos($response'<boolean>0</boolean>')? $return true$return false;
     
Статус темы:
Закрыта.