Php 第二个是;如果;语句描述了令牌数小于10时的错误。为什么误差超过10?

Php 第二个是;如果;语句描述了令牌数小于10时的错误。为什么误差超过10?,php,mysql,Php,Mysql,因此,我这里的php是一个更新mysql查询,说明如果令牌is_logged_in()){header(!$user->is_logged_in())的情况下,重定向到登录页面('Location:login.php');exit();}//定义页面标题$title='Dashboard~Pixel Jag.;//包含标题模板require('layout/header.php');?>那么您可以发布完整的代码吗?因为从这段代码中,我只能得出以下错误,这里是$\u会话['tokens']实际设置

因此,我这里的php是一个更新mysql查询,说明如果令牌<10,则返回“一些错误”。。问题是每次我执行代码时,它都会返回错误。每次都以相同的方式,即使令牌=11。。我就是不明白 完整代码 //如果未登录,请重定向到登录页面

if(!$user->is_logged_in()){ header('Location: login.php'); exit(); }
//定义页面标题

$title = 'Dashboard ~ Pixel Jag.';
//包含标题模板

require('layout/header.php'); 
?>
<div class="container">
<div class="panel panel-default">
 <?php
$servername = "localhost";
$username = "user";
$password = "pass";
$dbname = "database";
require('layout/footer.php'); 
?>
//检查连接

$db = mysqli_connect($servername, $username, $password, $dbname);
if (!$db) {
die("Connection failed: " . mysqli_connect_error());
}
if (($_SESSION['tokens'] < 10)) {
echo "<ul class='list-group'><li class='list-group-item list-group-item-danger'>You do not have enough tokens!</li></ul>";
}
else {
$sql = "UPDATE members SET tokens=tokens - 10, tokenstatus='(Pending Tokens)' ,tokenswith=tokenswith + 10, tokenstatus1='(Pending Tokens)' WHERE username = '".($_SESSION['username']) ."'";
}
if (mysqli_query($db, $sql)) {
echo "<ul class='list-group'><li class='list-group-item list-group-item-success'><h4>Record updated successfully!</h4></li></ul>";
} else {
echo "Error updating record: " . mysqli_error($db);
}

mysqli_close($db);
?> 

<div class="panel-footer">
<a href="index.php"><h4>Back To Dashboard..</h4></a>
</div>
</div>
</div>
<?php 

这一定是因为会话变量中的值小于10。 尝试检查以下事项 1.你开始上课了吗? 2.如果是,会话将启动,然后尝试回显会话的值
3.如果会话已启动,且值显示为零,则转到您试图放置会话变量值的位置,并检查是否存在拼写错误或插入错误。

我假设这是因为我在开始时包含了config.php,然后在(!$user->is_logged_in()){header(!$user->is_logged_in())的情况下,重定向到登录页面('Location:login.php');exit();}//定义页面标题$title='Dashboard~Pixel Jag.;//包含标题模板require('layout/header.php');?>那么您可以发布完整的代码吗?因为从这段代码中,我只能得出以下错误,这里是
$\u会话['tokens']
实际设置?如果我取出if语句,它只会从用户令牌中取出10个令牌。因此,我认为它已设置?如果不是,我究竟如何在这个问题上获得我想要的结果?iNo,这并不意味着它已设置。请尝试以下操作:
取消设置$x;echo($x<10)?'true':'false';
您将看到它打印出
true
。因此,对于我已经拥有的代码,我应该添加什么来开始一个会话并调用正确的sql查询以仅在用户有10个令牌时更新?对不起,我很困惑lol。这太多了。我建议您从阅读上的PHP手册开始