设置if语句的结果

时间:2016-10-26 15:15:20

标签: php if-statement echo

我正在显示用户的个人资料图片。如果用户没有更新自己的配置文件,我已经创建了一个if语句来发布默认配置文件图像。这一切都有效,但我无法弄清楚的是如何回答或调用每个没有错误的未设置错误。

例如,如果他们确实有一个个人资料图片集,它会发布很好,但后来我得到一个错误,其他变量没有定义,反之亦然。

我应该如何调用此代码或在代码中进行哪些更改?

        $pics = array();
        while ($stmt->fetch()) {
            $pics[] = $profilePic;
        }
        if ($profilePic === NULL) {
            $default_profile_img = '<img class="welcome-pic" src="profile_images/default.jpg">';
        } else {
            $set_profile_img = '<img class="welcome-pic" src=" '.$profilePic.'">';
        }
  }
?>
<nav id="nav-panel">
    <div id="nav-container">
            <div id="welcome">
                <?php echo $default_profile_img; 
                echo $set_profile_img; ?>

编辑:

如何定义profilepic:

$sql = "
  SELECT *
  FROM profile_img
  WHERE user_id = ?
  ORDER BY id DESC LIMIT 1
  ";
if ($stmt = $con->prepare($sql)) {
        $stmt->bind_param("s", $user_id);
        $stmt->execute();
        if (!$stmt->errno) {
            // Handle error here
        }
        $stmt->bind_result($id, $user_id, $profilePic);

3 个答案:

答案 0 :(得分:1)

您只需要在if..else语句之前初始化变量,这样当您尝试回显它们时,它就不会被定义。

$profile_img = "";
$default_profile_img = "";

if (...

答案 1 :(得分:1)

只需在php代码的顶部添加 $ default_profile_img = null; $ set_profile_img = null;

$default_profile_img = null;
$set_profile_img = null;
$pics = array();
    while ($stmt->fetch()) {
        $pics[] = $profilePic;
    }
    if ($profilePic === NULL) {
        $default_profile_img = '<img class="welcome-pic" src="profile_images/default.jpg">';
    } else {
        $set_profile_img = '<img class="welcome-pic" src=" '.$profilePic.'">';
    }
}
?>
<nav id="nav-panel">
<div id="nav-container">
        <div id="welcome">
            <?php echo $default_profile_img; 
            echo $set_profile_img; ?>

答案 2 :(得分:0)

试试这段代码。不需要使用两个不同的变量。这样,您就不会收到警告。

$pics = array();
while ($stmt->fetch()) {
    $pics[] = $profilePic;
}
if (!isset($profilePic) OR $profilePic === NULL) {
    $profile_img = '<img class="welcome-pic" src="profile_images/default.jpg">';
} else {
    $profile_img = '<img class="welcome-pic" src=" '.$profilePic.'">';
}
}
?>
<nav id="nav-panel">
    <div id="nav-container">
        <div id="welcome">
            <?php echo $profile_img; ?>