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

发布于 2024-10-14 16:56:14 字数 1939 浏览 6 评论 0 原文

我正在创建一个列出 Ebay 上项目的应用程序,并且为每个项目提供了一个 HTML 页面,并告诉我使描述与该 html 相匹配。 HTML 页面非常基本,在 HTML4 中(很多 等)

当我 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);};} 

I'm creating an application which lists items on Ebay, and I've been given an HTML page for each and told to make the description match this html. The HTML page is very basic, and in HTML4 (lots of <font> and <p align='left'> etc)

When I file_get_contents() the html I am wrapping it in CDATA to escape the HTML entities and such. Although when I post it, I'm being kicked back an error about string encoding.

Here is my code,

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()
}

This is the error, that my SOAPClient is giving me,

Fatal error: SOAP-ERROR: Encoding: string '<![CDATA[<html> <head> <meta http-equiv=" //etc

I've been reading these pages,

Neither of which give me any real idea's. The only thing that I can think of is rebuilding the HTML pages to be XHTML 1.0 Strict. Which is a little frustrating as I have about 10 of them to do!

Any ideas please?


Update
I have converted one template into XHTML and have managed to post the item, although here is the description as rendered on Ebay sandbox.

= 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);};} 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

桃扇骨 2024-10-21 16:56:14

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

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

I have managed to solve this by removing both the CDATA and htmlentities from the markup, and also convert the actual page from HTML4 to updated and valid XHTML.

It has pulled all my formatting, using an embedded stylesheet, except a background coloured padded div.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文