私は 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 '<![CDATA[<html> <head> <meta http-equiv=" //etc
これらのページを読んでいて、
- http://developer.ebay.com/DevZone/XML/docs/Reference/eBay/AddItem.html (Item.Description を検索)
- http://developer.ebay.com/DevZone/XML/docs/WebHelp/wwhelp/wwhimpl/js/html/wwhelp.htm
どちらも私に本当のアイデアを与えてくれません。私が考えられる唯一のことは、HTML ページを XHTML 1.0 Strict に再構築することです。やるべきことが10個ほどあるので、これは少しイライラします!
アイデアはありますか?
更新
1 つのテンプレートを 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);};}