我有麻烦从我的数据库获取信息。它需要从用户选择头像。如果avatar = NULL, avatarcode = <a href="user.php?u='.$log_username.'"><img id="profile" src="img/user.png"></a>
,否则,avatarcode = <a href="user.php?u='.$log_username.'"><img id="profile" src="user/'.$log_username.'/'.$avatar.'"></a>
$sql = "SELECT avatar FROM users";
$query = mysqli_query($db_conx, $sql);
$avatarcode = "";
while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
$avatar = $row["avatar"];
if ($avatar = NULL) {
$avatarcode = '<a href="user.php?u='.$log_username.'"><img id="profile" src="img/user.png"></a>';
} else {
$avatarcode = '<a href="user.php?u='.$log_username.'"><img id="profile" src="user/'.$log_username.'/'.$avatar.'"></a>';
}
}
PHP中的比较永远不能使用一个"等于"号,而应该使用两个或三个"等于"号(推荐使用,因为类型安全比较不会出现意外)。
if ($avatar === NULL) {
不要将空数据库字符串值与null
比较,将其与空字符串""
比较
和比较两个等号==
一个等号用于赋值
如果值实际上是null而不是空字符串比较is_null($avatar)
或$value === NULL
你可以让你的列为null
ALTER TABLE `users` CHANGE `avatar` `avatar` VARCHAR(11) NULL;
如果未提供的头像是空字符串,请使用:
if ($avatar == "") {
或者如果没有提供头像为null
if (is_null($avatar)) {