ng2

Проблема: картинки и Xml-rpc

При удаленном постинге через XML-RPC наблюдается следующее явление…

Отсылаю:

<a href="http://yandex.ru">Yandex</a><br/><img src="http://imgl.yandex.net/i/www/logo1.png"/>

А приходит (доступно при HTML-редактировании записи):

<a href="http://yandex.ru">Yandex</a><br><img>

Подозреваю, что при постинге EMBED-объектов будет что-то похожее…

Подскажите, пожалуйста, в чем может быть проблема? Может кто-нибудь уже сталкивался с подобным?

Для постинга использую следующую функцию:

function send_post($blog, $login,$pass,$title,$description,$tags,$allow_comment = 0,$ping = 0,$publish=1) {
    $xmltags='';
    $tags = explode(',',$tags);
    foreach ($tags as $tag) {
        $xmltags.="<value>$tag</value>";
    }
    $query = '<?xml version="1.0"?>
    <methodCall>
        <methodName>metaWeblog.newPost</methodName>
        <params>
        <param>
            <value><int>0</int></value>
        </param>
        <param>
            <value><string>'.$login.'</string></value>
        </param>
        <param>
            <value><string>'.$pass.'</string></value>   
        </param>
        <param>
            <value><struct>
                <member>
                    <name>title</name>        
                    <value><string>'.$title.'</string></value>
                </member>
                <member>
                    <name>description</name>
                    <value><string>'.$description.'</string></value>
                </member>
                <member>
                    <name>mt_keywords</name>
                    <value>
                        <array>
                            <data>'.                               
                                $xmltags   
                            .'</data>
                        </array>
                    </value>
                </member>
                <member>
                    <name>mt_allow_comments</name>
                    <value><int>'.$allow_comment.'</int></value>
                </member>
                <member>
                    <name>mt_allow_pings</name>
                    <value><int>'.$ping.'</int></value>
                </member>
            </struct></value>
   
        </param>
        <param>
            <value><string>'.$publish.'</string></value>
        </param>
           
        </params>
    </methodCall>';
   
    $headers = "POST /xmlrpc.php HTTP/1.0\r\n".
            "Host:$blog \r\n".
            "Connection: Close\r\n".
            ''.
            "Content-Type: text/xml\r\n".
            "Content-Length:".strlen($query)."\r\n".
            "\r\n";
    $user_agent=NULL;

    $conn = fsockopen("$blog", 80);
    if(!$conn) {
        return "error while open socket";
    }
    else {
        fputs($conn, "$headers");
        fputs($conn, $query);
        $response = "";
        while(!feof($conn))
        {
            $response .= fgets($conn, 1024);
        }
        fclose($conn);
        $response = substr($response, strpos($response, "\r\n\r\n")+4);
        $dom = new DOMDocument();
        $dom ->loadXML($response);
        $tags= $dom->getElementsByTagName('value');
        if ($tags->length ==1) {
            return "OK ";
        }
        else {
            return "ERROR ";
        }
    }
}
Anonymous
Отправить
Ответ на: