使用ajax时,使用php file_get_contents()不起作用

时间:2015-09-14 00:31:01

标签: php jquery ajax file-exists

更新:此问题已解决,我的问题是错字。我正在做的事情的概念是正确的。

我检查首次显示页面时是否退出图像。打印出来:

private

当我第一次加载页面并使用HTML编写php时,此代码可以正常工作。

但在其他情况下,当我执行jQuery if (@file_get_contents($url) != false) { // show URL } else { // Show Placeholder Image } .post调用(基本上是ajax)时,执行上面的文件检查总是失败。我打印出了URL,它指向正确的文件(我可以通过解除错误来解决这个问题)。现在,url是一个与被调用的原始文件不同的域,因此不确定它是否是跨域问题(它也是属于我的网站,因此我可以完全访问这些文件)。

由于ajax,此代码无效吗?跨域?别的什么?

此外,我尝试过.getfile_existsgetimagesize也无济于事。

编辑:

以下是未消除错误时的消息:

  

警告:cUrl [function.file-get-contents]:无法打开流:HTTP请求失败!在第352行没有找到HTTP / 1.1 404

1 个答案:

答案 0 :(得分:1)

如果PHP在这种情况下失败了,请尝试使用jQuery来实现相同的结果。 SO上还有另一个答案,它有一个小功能就是:它检查url是否指向现有文档或文件,并返回其HTTP代码。

https://stackoverflow.com/a/9377204/536425

使用async: falseasync: true同时尝试,并查看哪一个为您完成工作。