我有一个带有一些文本框的表单,用于加载数据库中的数据。我还创建了一个按钮,我可以更新数据,但目前它不起作用,我也没有任何线索。
这是我的疑问:
<?php
include('connect.php');
if (isset($_POST['btnUpdate'])){
$query = "UPDATE users SET fname = '".$_POST['fname']."', lname = '".$_POST['lname']."' WHERE user_id = '".$_POST['id']."'";
$result = mysql_query($query);
if ($result) {
die("<strong>Updated</strong>");
} else {
die("<strong>Error ".mysql_error()."</strong>");
}
}
?>
这是我的表格:
<form class="form-horizontal" role="form" action="" method="post">
<input type="hidden" name="id" value="<?php echo $row['user_id']; ?>"/>
<div class="form-group">
<label class="col-lg-3 control-label">First name:</label>
<div class="col-lg-8">
<input class="form-control" name="fname" type="text" value="<?php echo $row['fname'];?>">
</div>
<label class="col-lg-3 control-label">Last name:</label>
<div class="col-lg-8">
<input class="form-control" name="lname" type="text" value="<?php echo $row['lname'];?>">
</div>
<label class="col-md-3 control-label"></label>
<div class="col-md-8" >
<input type="button" name="btnUpdate" class="btn btn-primary" value="Save Changes">
<span></span>
<input type="reset" class="btn btn-default" value="Cancel">
</div>
</div>
</form>
我已尝试过所有内容,但不会更新我的数据库。当我在浏览器上检查它时,它没有任何错误。我的想法已经不多了。任何人都知道我的代码的哪一部分是错的?我还是php的初学者,我似乎无法理解这里有什么问题。任何想法如何解决这个问题将不胜感激。感谢
答案 0 :(得分:3)
发布为社区维基;我觉得不应该有代表。
默认情况下, recipients
不会传播POST。因此,您需要使用&#34;提交&#34;类型:
<input type="button">
或<input type="submit">
。
参考文献:
<强>型强>
按钮的类型。可能的值有:
如果您的网站已上线或打算上线,您还可以接受严格的SQL注入。
您应该开始考虑切换到<button type="submit">
或PDO api以及准备好的声明。
参考文献: