Php mysql中的照片名称未显示备选方案

Php mysql中的照片名称未显示备选方案,php,mysqli,Php,Mysqli,有人能告诉我哪里出了问题吗?我已经做了好几个小时了,似乎无法让它发挥作用。。。 显示成员是否已上载的图片。。。 上传图片时,会将详细信息放入mysql数据库(picture.jpg) 如果图片没有上传,我在显示默认图片时遇到问题。 我尝试了各种不同的方法,包括numrows,但有些地方不对劲,因为某些原因,我没有得到默认图片。。。。 如有任何帮助,我们将不胜感激。谢谢 $sql_com = mysqli_query($db_conx, "SELECT `photo` FROM `members`

有人能告诉我哪里出了问题吗?我已经做了好几个小时了,似乎无法让它发挥作用。。。 显示成员是否已上载的图片。。。 上传图片时,会将详细信息放入mysql数据库(picture.jpg)

如果图片没有上传,我在显示默认图片时遇到问题。 我尝试了各种不同的方法,包括numrows,但有些地方不对劲,因为某些原因,我没有得到默认图片。。。。 如有任何帮助,我们将不胜感激。谢谢

$sql_com = mysqli_query($db_conx, "SELECT `photo` FROM `members` ORDER BY `members`.`registered` DESC LIMIT 7");
$hpmembers = '';
while($row = mysqli_fetch_array($sql_com)){ 
$photo = $row["photo"];

if (file_exists('photos/' . $photo . '')) {
    $user_pic = '<img src="photos/' . $photo . '" width="94" height="94" border="0" style="padding:2px;border:#e6e6e6 solid 1px;margin:3px;" />';
}else{
    $user_pic = '<img src="photos/avatar.gif" width="94" height="94" border="0" style="padding:2px;border:#e6e6e6 solid 1px;margin:3px;" />';   
}

    $hpmembers .= '' . $user_pic . '';
}
$sql\u com=mysqli\u query($db\u conx,“按'members'顺序从'members'中选择'photo'。'registed'DESC LIMIT 7”);
$hpmembers='';
而($row=mysqli_fetch_数组($sql_com)){
$photo=$row[“photo”];
如果(文件_存在('photos/.$photo')){
$user_pic='';
}否则{
$user_pic='';
}
$hpmembers.=''.$user_pic';
}
还尝试:

$sql_com = mysqli_query($db_conx, "SELECT `photo` FROM `members` ORDER BY `members`.`registered` DESC LIMIT 0, 14");
$i = 0;
$hpmembers = '<table border="0" cellpadding="5">';
$num_rows = $sql_com->num_rows;
while($row = mysqli_fetch_array($sql_com)){ 
$photo = $row["photo"];

if ((file_exists('photos/' . $photo . '')) && ($num_rows > 0)) {
    $user_pic = '<img src="photos/' . $photo . '" width="50" height="50" border="0" />';
}else{
    $user_pic = '<img src=\"photos/avatar.gif\" width="50px" height="50px" border="0" />';  
}

if ($i % 7 == 0) {
    $hpmembers .= '<tr><td>' . $user_pic . '</td>';
} else {
    $hpmembers .= '<td>' . $user_pic . '</td>';
}
$i++;
}
$hpmembers .= '</tr></table>';
$sql\u com=mysqli\u query($db\u conx,“按'members'顺序从'members'中选择'photo'。'registed'DESC LIMIT 0,14”);
$i=0;
$hpmembers='';
$num\u rows=$sql\u com->num\u rows;
而($row=mysqli_fetch_数组($sql_com)){
$photo=$row[“photo”];
如果((文件_存在('photos/'.$photo')&&($num_行>0)){
$user_pic='';
}否则{
$user_pic='';
}
如果($i%7==0){
$hpmembers.=''.$user_pic';
}否则{
$hpmembers.=''.$user_pic';
}
$i++;
}
$hpmembers.='';

如果
$photo
为空,则目录
photos/
存在

改变

 if (file_exists('photos/' . $photo . '')) {


如果
$photo
为空,则目录
photos/
存在

改变

 if (file_exists('photos/' . $photo . '')) {


@福布斯的答案很好,我只是提供另一种方法

我将检查您的查询是否返回任何行。如果有,那就有一张照片, 如果没有,则显示默认图片

$sql_com = mysqli_query($db_conx, "SELECT `photo` FROM `members` ORDER BY `members`.`registered` DESC LIMIT 7");
if (!mysqli_num_rows($img_result)){ //If nothing is returned from the database, then display default image
     $user_pic = '<img src=\"photos/avatar.gif\" width="50px" height="50px" border="0" />';  
}
else{ //If there is a location returned, display the image with the image path
      while($row = mysqli_fetch_array($sql_com)){ 
      $photo = $row["photo"];
      $user_pic = '<img src="photos/' . $photo . '" width="50" height="50" border="0" />';
}
$sql\u com=mysqli\u query($db\u conx,“按'members'顺序从'members'中选择'photo'。'registed'DESC LIMIT 7”);
如果(!mysqli_num_rows($img_result)){//如果数据库没有返回任何内容,则显示默认图像
$user_pic='';
}
否则{//如果返回了位置,则显示带有图像路径的图像
而($row=mysqli_fetch_数组($sql_com)){
$photo=$row[“photo”];
$user_pic='';
}

我这样做是因为我在编写代码时考虑了否定检查。但这也应该给出相同的结果:D

@Forbs答案很好,我只是提供了另一种方法

我会检查你的查询是否返回了行。如果返回了行,则有一张照片, 如果没有,则显示默认图片

$sql_com = mysqli_query($db_conx, "SELECT `photo` FROM `members` ORDER BY `members`.`registered` DESC LIMIT 7");
if (!mysqli_num_rows($img_result)){ //If nothing is returned from the database, then display default image
     $user_pic = '<img src=\"photos/avatar.gif\" width="50px" height="50px" border="0" />';  
}
else{ //If there is a location returned, display the image with the image path
      while($row = mysqli_fetch_array($sql_com)){ 
      $photo = $row["photo"];
      $user_pic = '<img src="photos/' . $photo . '" width="50" height="50" border="0" />';
}
$sql\u com=mysqli\u query($db\u conx,“按'members'顺序从'members'中选择'photo'。'registed'DESC LIMIT 7”);
如果(!mysqli_num_rows($img_result)){//如果数据库没有返回任何内容,则显示默认图像
$user_pic='';
}
否则{//如果返回了位置,则显示带有图像路径的图像
而($row=mysqli_fetch_数组($sql_com)){
$photo=$row[“photo”];
$user_pic='';
}

我这样做是因为我在编写代码时考虑了负数检查。但这也会给出相同的结果:D

您是否将文件位置存储在数据库中?是否将文件位置存储在数据库中?注意:您可能还需要将
$photo=$row[“photo”];
更改为
$photo=trim($row[“photo”]);
以防有人在照片字段中给您一个空格。向上投票,并添加了第二种方法以实现相同的结果:)注意:您可能还需要将
$photo=$row[“photo”];
更改为
$photo=trim($row[“photo”]);
以防有人在照片字段中给你一个空格。向上投票,并添加了第二种方法来实现相同的结果:)