当我尝试使用php更新db中的表时,出现以下错误。
查询失败您的sql语法有错误;请检查与您的mariadb服务器版本对应的手册,以获取在第1行的“”附近使用的正确语法
(第一行是我的查询开始的地方)
我的结论是这和 "id"
但我不知道是什么。如果我硬编码为 "WHERE id = 1"
它工作,但它似乎真的看不到身份证。
if(isset($_POST['submit'])){
$username = $_POST['username'];
$password = $_POST['password'];
$id = $_POST['id'];
$query = "UPDATE users SET ";
$query .= "username = '$username', ";
$query .= "password = '$password' ";
$query .= "WHERE id = $id ";
$result = mysqli_query($connection, $query);
if(!$result) {
die("QUERY FAILED" . mysqli_error($connection));
}
}
下面是我用于id的hthml:
<form action="login_update.php" method="post">
<div class="form-group">
<select name="id" id="">
<?php
global $connection;
$query = "SELECT * FROM users";
$result = mysqli_query($connection, $query);
if(!$result){ //om result inte är TRUE then die()
die('Query failed ' .mysqli_error());
}
while($row = mysqli_fetch_assoc($result)){
$id = $row['id'];
echo "<option value=''>$id</option>";
?>
</select>
</div>
<input class="btn btn-primary" type="submit" name="submit" value="Update">
</form>
我在localhost上运行这个程序,所以不需要任何散列,到db的连接也可以正常工作。
2条答案
按热度按时间swvgeqrz1#
添加如下查询:
6l7fqoea2#
为选择框选项添加值