This question already has answers here:
Reference — What does this symbol mean in PHP?
(18个回答)
5年前关闭。
所以,
我运行Minecraft服务器,并在单独托管的服务器上有一个网站。我使用bukkit插件,当播放器加入时,该插件会向数据库发送一个值。它存储为[BLOB-1 B](下图),它是一个二进制值,因此我将其转换为十六进制,然后检查其值。作为布尔值,它可以是00-假或01-真。但是当使用我的if语句检查值是什么时,如果值为00,它仍然在线显示...
但是,当我在网络服务器上使用以下代码时:
#####的详细信息是私有的,例如密码等。
连接工作正常,否则返回错误提示“无法连接”。
那么,为什么我的IF函数不起作用?
谢谢! :)
在您看来
对于零,您可以使用===运算符
(18个回答)
5年前关闭。
所以,
我运行Minecraft服务器,并在单独托管的服务器上有一个网站。我使用bukkit插件,当播放器加入时,该插件会向数据库发送一个值。它存储为[BLOB-1 B](下图),它是一个二进制值,因此我将其转换为十六进制,然后检查其值。作为布尔值,它可以是00-假或01-真。但是当使用我的if语句检查值是什么时,如果值为00,它仍然在线显示...
但是,当我在网络服务器上使用以下代码时:
<form action="skript2.php" method="get">
<input type="text" name="user" />
<input type="submit" name="submit" value="Username" />
</form>
<?php
$uname = $_GET['user'];
$con=mysqli_connect("#####","#####","#####","#####");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM `variables21` WHERE name='db_sdb.$uname.onlinemode'");
if($row = mysqli_fetch_array($result)) {
$val = $row['value'];
$str = bin2hex("$val");
echo "$str";
if ($str = 01) {
echo "<body bgcolor=\"green\">";
echo "<font color=\"white\"><img src=\"https://minotar.net/helm/$uname/32\"> -- $uname is online!</font>";
}
if ($str = 00) {
echo "<body bgcolor=\"red\">";
echo "<font color=\"white\"><img src=\"https://minotar.net/helm/$uname/32\"> -- $uname is offline!</font>";
}
}
mysqli_close($con);
?>
#####的详细信息是私有的,例如密码等。
连接工作正常,否则返回错误提示“无法连接”。
那么,为什么我的IF函数不起作用?
谢谢! :)
最佳答案
您需要==运算符
if ($str == 1) {
}
在您看来
if ($str == 1) {
echo "<body bgcolor=\"green\">";
echo "<font color=\"white\"><img src=\"https://minotar.net/helm/$uname/32\"> -- $uname is online!</font>";
}
对于零,您可以使用===运算符
if ($str === 0) {
echo "<body bgcolor=\"red\">";
echo "<font color=\"white\"><img src=\"https://minotar.net/helm/$uname/32\"> -- $uname is offline!</font>";
}
10-04 12:25