Ebay API - 如何将HTML导入描述字段?

时间:2011-01-27 11:35:00

标签: php api soap ebay

我正在创建一个在Ebay上列出项目的应用程序,我已经为每个人分配了一个HTML页面并告诉他们使这个描述符合这个html。 HTML页面非常基本,在HTML4中(很多<font><p align='left'>等)

当我file_get_contents() html时,我将它包装在CDATA中以逃避HTML实体等。虽然当我发布它时,我被踢回了关于字符串编码的错误。

这是我的代码,

if(ini_get(allow_url_fopen) == 1){
    $page_layout .= "<![CDATA[";
    $page_layout .= file_get_contents("http://www.example.com/".$template->directory."/template/index.htm");
    $page_layout .= "]]>";

    $page_layout = htmlentities($page_layout);
}else{
    // fopen()
}

这是我的SOAPClient给我的错误,

Fatal error: SOAP-ERROR: Encoding: string '&lt;![CDATA[&lt;html&gt; &lt;head&gt; &lt;meta http-equiv=&quot; //etc

我一直在阅读这些页面,

这些都没有给我任何真实的想法。我唯一能想到的是将HTML页面重建为XHTML 1.0 Strict。这有点令人沮丧,因为我有大约10个要做!

有什么想法吗?


更新
我已经将一个模板转换为XHTML,并设法发布该项目,尽管这是在Ebay沙箱上呈现的描述。

= 523) {w = document.body.scrollWidth;} else {w = document.body.offsetWidth;if (window.scrollMaxX !== 0) {w += window.scrollMaxX;}}}if (isNaN(w)) {w = 0;}if ((oCl.bFirefox && oCl.bWin) && (h > 32000)) {h = 32000;}rv[0] += h;rv[1] += w;return rv;};ifr.resizeIt = function(callerId) {var oCl = ifr.browserDetect();var size = ifr.getSize();if (size) {if (!oCl.bSafari) {parent.resizeFrame(size);}ifr.setData(size, callerId);};} 

1 个答案:

答案 0 :(得分:0)

我设法通过从标记中删除CDATAhtmlentities来解决此问题,并将实际页面从HTML4转换为更新且有效的XHTML。

它使用嵌入式样式表拉取了我的所有格式,除了背景色的填充div。