当我试图从名为'imgProduct‘的文件夹中检索所有的jpg文件时,我得到了损坏的图像。
错误消息是“加载资源失败:服务器响应状态为404 (未找到)”
所有镜像的目录为C:\Sungsan\imgProduct。
下面的代码目录是C:\Sungsan\Website\view\shopPanel.php。
<?php
$productImg = glob("../imgProduct/*.jpg*");
echo var_dump($productImg).'<br>';
for($a = 0; $a < count($productImg); $a++) {
$num = $productImg[$a];
echo basename($num)."<br />";
echo '<img src="' .$num. '" alt="random image"> <br />';
}
?>This image is the result that code above is excuted.
我一直在寻找如何解决这个损坏的图像,但我不知道。希望能给大家推荐或建议。谢谢
发布于 2018-04-13 20:39:19
你的basepath会让../imgProduct/img01.jpg变成img01.jpg。我假设您的web根目录不在imgProduct中,所以您需要追加它:
$num = basename($num);
echo "{$num}<br/><img src='/imgProduct/{$num}' alt='random image'> <br />";也不要把服务器端的路径和web端的url搞混了。../imgPorduct/img01.jpg将从当前网站页面返回您的网址,而不是从PHP文件返回
发布于 2018-04-13 21:00:57
我可能是错的,但从外观上看,您是在尝试引用错误目录中的文件吗?更改您的图像src,使其指向包含图像的文件夹(目前它似乎在网页的当前目录中查找'img1.jpg‘。
echo '<img src="../imgProduct/' .$num. '" alt="random image"> <br />';在再次查看您的屏幕截图和阅读一些评论后,我还注意到您可能还会删除basename,因为它会剥离文件路径的其余部分。
希望这能有所帮助。
https://stackoverflow.com/questions/49817117
复制相似问题