Hellooverflow用户,
我有一个关于Mysqli Prepared Statements的问题,我尝试了一些东西,但没有用。我的代码必须使用自定义变量作为列更新查询。
我在下面提供了我的代码, 我希望你们中的某些人可以帮我解决我的问题!
$username = 'MyUsername';
$rank = 'Administrator';
$server = 'Node5';
$stmt = $connection->prepare("UPDATE staff_members SET ?=? WHERE Username=? LIMIT 1");
$stmt->bind_param("sss", $server, $rank, $username);
$stmt->execute();
亲切的问候, Rabascm
答案 0 :(得分:2)
在准备好的陈述中,这是不可能的。 如果你想这样做,那么你必须首先用'服务器'声明一个变量字符串。然后将刚创建的变量放在准备好的语句中。
所以它看起来像这样:
$sqlString = "UPDATE staff_members SET $server=? WHERE Username=?";
$stmt = $connection->prepare($sqlString);
$stmt->bind_param("ss", $rank, $username);
$stmt->execute();
我希望我解释得足够多,我希望这对你来说很清楚?