似乎无法使查询正常工作?

Can't seem to get query to work?

<?php
error_reporting(E_ALL);

session_start();

include ('connect.php');

if(!empty($_POST['budgetbox']))
{
    $budgetboxvar = $_POST['budgetbox'];

    $sql="INSERT INTO users WHERE username = '".$_SESSION['usernamebox']."'(budget) VALUES ('$budgetboxvar')";


    mysqli_query($db,$sql); 


} 
?>

有谁知道为什么上面的代码不起作用?如果我省略下面的代码,代码似乎可以正常工作。对不起,但我似乎无法弄清楚这是不正确的?我也没有收到任何错误消息。

当我取出 WHEN username is SESSION usernamebox 部分时..查询确实输入到我的数据库中,只是不在登录用户的字段中..

如果查询成功,我尝试回显一些内容,但它也没有显示任何内容。这意味着无法执行查询(我认为)。虽然不知道为什么(有时很难成为一个菜鸟)

在此先感谢您,希望您能有所帮助!

如果我没理解错的话,是这样的:

 $sql = "UPDATE users SET budget='".$budgetboxvar."' WHERE username = '".$_SESSION['usernamebox'];
if(!empty($_POST['budgetbox']))
{

$query = $db->prepare("UPDATE users SET budget=? WHERE username=?"); ///statements voorbereiden

$budgetboxvar = $_POST['budgetbox'];
$name = $_SESSION['usernamebox']; //var toekennen

$query->bind_param("ss", $budgetboxvar, $name);
$query->execute();
echo"Thank you for entering your budget!";  
}

并且..我将数据库列 "budget" 更改为 VARCHAR64