我有一个while循环来获取信息,在循环中我有另一个循环,以获取与主循环不同的表关系的图像的信息... 收集和显示信息很好,当图像表中没有图像路径时,获取与信息相关的图像正常工作..(即:如果没有人上传图片) 它不是Mysql中的实际图像,即图像的路径...
对于EG:
Id 1 =没有图像,显示没有图像pic
Id 2 =图像并显示图像
Id 3 =无图像,但显示来自Id 2的图像(不应显示图像pic)
Id 4 =图像并显示图像
Id 5 =图像并显示图像
Id 6 =无图像,但显示来自Id 2的图像(不应显示图像pic)
Id 7 =无图像,但显示来自Id 2的图像(不应显示图像pic)
$sql_props = mysqli_query($db_conx, "SELECT `image` FROM `images` WHERE `id`='$id' LIMIT 0,1");
while($lex = mysqli_fetch_array($sql_props)){
$proppic = $lex["image"];
}
$check_pic = "$proppic";
if (file_exists($check_pic)) {
$pr_spic = "<img src=\"$proppic\" width=\"100px\" height=\"100px\" border=\"0\" />";
} else {
$pr_spic = "<img src=\"images/nopimg.png\" width=\"100px\" height=\"100px\" border=\"0\" />";
}
谢谢你,希望有人可以帮忙解决这个问题:)
答案 0 :(得分:1)
问题很可能是你在while循环的一次迭代中定义了变量$proppic
,然后再次访问它,认为变量应该被取消,因为它似乎超出了范围。 / p>
我会尝试在尽可能少地修改代码时为您提供解决方案。
$sql_props = mysqli_query($db_conx, "SELECT `image` FROM `images` WHERE `id`='$id' LIMIT 0,1");
$num_rows = $sql_props->num_rows;
while($lex = mysqli_fetch_array($sql_props)){
$proppic = $lex["image"];
}
$check_pic = "$proppic"; //bad style
if ((file_exists($check_pic)) && ($num_rows > 0)) {
$pr_spic = "<img src=\"$proppic\" width=\"100px\" height=\"100px\" border=\"0\" />";
} else {
$pr_spic = "<img src=\"images/nopimg.png\" width=\"100px\" height=\"100px\" border=\"0\" />";
}