我正在使用PHP脚本读取目录中的一些文件夹,并根据其名称检索海报。所有这些都适用于localhost
。但是,在外部打开时,这不起作用并产生blank
图像。
来自localhost的屏幕截图:
<小时/> 问题可以在89.241.171.100/Prac/
找到。
PHP生成img tag
:
while (false !== ($entry = readdir($handle))) {
$counter++;
echo "<span class='title'>
<img src='holder.js/200x280/text:$entry'
alt='$entry'
onload='loader(this, \"$entry\")' />
</span>";
if($counter == 5) break;
}
PHP从loader()
:
if($_POST['title']) {
$title = $_POST['title'];
$imdb = new Imdb();
$movieArray = $imdb->getMovieInfo("$title");
$link = $movieArray["poster_large"];
echo $link;
}
Loader()
功能:
$.ajax({
type: 'post',
url: 'loader.php',
data: 'title='+title,
success: function(data) {
img.src = data;
}
});
答案 0 :(得分:1)
这看起来与您加载它的方式有关。这些图片是通过Akamai的CDN提供的,它并不喜欢它所引用的推荐人。
这是返回的内容而不是图像有效负载。
<HTML><HEAD>
<TITLE>Referral Denied</TITLE>
</HEAD><BODY>
<H1>Referral Denied</H1>
You don't have permission to access "http://ia.media-imdb.com/images/M/MV5BMTM5NjM0ODY1NF5BMl5BanBnXkFtZTcwMjk5NjI0Ng@@._V1._SY500.jpg" on this server.<P>
Reference #24.24c633b8.1366714063.2a353f15
</BODY></HTML>
我并不鼓励违反任何人的条款,但this可能会对您有所帮助,我怀疑通过空推荐人会解决问题,因为当您直接访问图片网址时它会起作用(并且不会t发送推荐人。)
编辑:
This fiddle是我之前建议的一个实例。您会注意到直接链接的图像已经死亡,但没有引用的图像会完全加载。
答案 1 :(得分:1)
你可以使用Imdb API
只需使用以下网址请求数据:http://imdbapi.org/?id={id}&type=json&plot=simple&episode=1&lang=en-US&aka=simple&release=simple
{id}是电影的imdb id。然后你可以用以下方式访问图片:
$data = json_decode(file_get_contents("http://imdbapi.org/?id={id}&type=json&plot=simple&episode=1&lang=en-US&aka=simple&release=simple"));
$img = $data->poster;