图片错误时如何获取默认图片
How do I get a default picture when a picture errors
我正在尝试从数据库中获取图片并在我的网站上回显它,一切都按我想要的方式运行,但现在我遇到了一个小问题,如果图片还没有名称,或者它会出错 (就像一个 404 错误),我得到一个丑陋的小破损图像图标。
当我收到错误时,我可以得到一个默认图像吗?我试过了,但它只适用于尚未设置名称的地方。
if(!empty($filename)){ echo $filename;} else{ echo "pf.png"; }
在图片标签中插入:
onerror="this.src='[img src]'"
既然你说它与 "pf.png" 一起工作,我假设你至少正确使用了文件名。因此,如果您看到损坏的图像,则意味着资源无法加载,因为它不存在或无法检索。
所以你还必须在尝试使用之前检查图像是否存在:
if(!empty($filename) && file_exists($filename) {
echo $filename;
} else {
echo "pf.png";
}
要执行此操作 php,您必须检查文件是否存在。如果图像的 link 结束 "http:/www.*"
,您将无法执行此操作
上面的 Clément Malet 代码工作正常。
您可以在此处阅读有关 file_exitsts 函数的更多信息:
http://php.net/manual/en/function.file-exists.php
如果 link 图像已结束 [=21=] 您可以使用 jquery。
把这段代码放在</body>
之前记得加上jquery
$(document).ready(function(){
$("img").error(function(){
$(this).attr("src", "http://google.dk/default.php");
})
.each(function() {
$(this).attr("src",$(this).attr("src"));
});
})
我正在尝试从数据库中获取图片并在我的网站上回显它,一切都按我想要的方式运行,但现在我遇到了一个小问题,如果图片还没有名称,或者它会出错 (就像一个 404 错误),我得到一个丑陋的小破损图像图标。
当我收到错误时,我可以得到一个默认图像吗?我试过了,但它只适用于尚未设置名称的地方。
if(!empty($filename)){ echo $filename;} else{ echo "pf.png"; }
在图片标签中插入:
onerror="this.src='[img src]'"
既然你说它与 "pf.png" 一起工作,我假设你至少正确使用了文件名。因此,如果您看到损坏的图像,则意味着资源无法加载,因为它不存在或无法检索。
所以你还必须在尝试使用之前检查图像是否存在:
if(!empty($filename) && file_exists($filename) {
echo $filename;
} else {
echo "pf.png";
}
要执行此操作 php,您必须检查文件是否存在。如果图像的 link 结束 "http:/www.*"
,您将无法执行此操作上面的 Clément Malet 代码工作正常。
您可以在此处阅读有关 file_exitsts 函数的更多信息: http://php.net/manual/en/function.file-exists.php
如果 link 图像已结束 [=21=] 您可以使用 jquery。
把这段代码放在</body>
之前记得加上jquery
$(document).ready(function(){
$("img").error(function(){
$(this).attr("src", "http://google.dk/default.php");
})
.each(function() {
$(this).attr("src",$(this).attr("src"));
});
})