我正在创建一个在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
我一直在阅读这些页面,
这些都没有给我任何真实的想法。我唯一能想到的是将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);};}
答案 0 :(得分:0)
我设法通过从标记中删除CDATA
和htmlentities
来解决此问题,并将实际页面从HTML4转换为更新且有效的XHTML。
它使用嵌入式样式表拉取了我的所有格式,除了背景色的填充div。