我正在使用 AJAX 将内容加载到占位符中,PHP 代码使用 file_get_contents 来获取我想要的页面,然后将其返回给 AJAX 响应,该响应将其放入我的占位符中。我遇到的问题是被抓取的内容实际上正在被改变,就像 html 标签被放在它们不存在的地方。这是代码:
function getPreview() {
var indexe = ajax.length;
ajax[indexe] = new sack();
var form = document.getElementById('form');
ajax[indexe].setVar("prevsub", form.ebay_preview_submit.value);
ajax[indexe].method = 'POST';
ajax[indexe].requestFile = "../admin/model/catalog/getEbay.php";
ajax[indexe].onCompletion = function(){ createPreview(indexe) };
ajax[indexe].runAJAX();
}
function createPreview(indexe) {
var obj = document.getElementById('preview_ph');
obj.innerHTML = ajax[indexe].response;
}
所以所有东西都放在这个占位符里面:
<div id="preview_ph" ></div>
这是进行抓取的PHP:
if(isset($_POST['prevsub'])){
$template_viewer = http://localhost:8888/admin/view/template/ebay/template_viewer.php';
$file_got = file_get_contents($template_viewer);
echo $file_got;
}
这是它应该是什么与它在那里添加的内容的一个片段......
应该是:
Sign up for Newsletter</a> </div></td>
但相反,它被改变了:
Sign up for Newsletter</a></td></tr>
另一个,应该是:
bidding! </span>
</div>
</td></tr>
但被更改为:
bidding! </span>
</div>
</td></tbody>
它从它抓取的页面总共更改了 7 次内容......对此有什么解释吗?
该页面完美地在浏览器中打开,它被 AJAX 或 file_get_contents 以某种方式严重改变,我完全感到困惑......
谢谢你的帮助!