单击按钮时更新信息表
我有一个表格,可以从数据库中选择信息并显示它,我想知道是否有人可以提供代码让我通过单击按钮来更新列?
I have a table which will select information from a database and display it, I'm wondering if anyone can provide a code for me to update a column on the click of a button?
示例表:(Access=Boolean)
Example Table: (Access=Boolean)
ID - Name - Access
---------------------------
1 - John - 1
---------------------------
2 - Ben - 1
---------------------------
3 - Terry - 0
---------------------------
我现有的按钮基于引导程序,
My exisiting button is based on bootstrap,
<button type="button" id="passed" class="btn btn-success btn-flat"><i class="fa fa-check"></i></button>
<button type="button" id="insufficient" class="btn btn-danger btn-flat"><i class="fa fa-times"></i></button>
我希望有这样的事情,ONCLICK button1 Run $Allowed SQLONCLICK button2 运行 $NotAllowed SQL
I was hoping for something like this, ONCLICK button1 Run $Allowed SQL ONCLICK button2 Run $NotAllowed SQL
$allowed = mysqli_query($conn," UPDATE users SET Access = "1" WHERE id = '27' ");
$notallowed = mysqli_query($conn," UPDATE users SET Access = "0" WHERE id = '453' ");
推荐答案
您可以使用带有 post 方法的表单和带有命名属性的提交类型的按钮,并在条件语句中使用这些按钮.
You can use a form with a post method and a submit type of buttons with named attributes and use those in a conditional statement.
即:
旁注:我删除了转义引号,因为我不确定这些引号是否已经设置在 echo 中.
Sidenote: I removed the escaped quotes, as I was not sure if those were already set inside an echo.
HTML 表单:
<form method="post" action="handler.php">
<button type="submit" name="passed" id="passed" class="btn btn-success btn-flat"><i class="fa fa-check"></i></button>
<button type="submit" name="insufficient" id="insufficient" class="btn btn-danger btn-flat"><i class="fa fa-times"></i></button>
</form>
PHP:
<?php
// db connection
if(isset($_POST['passed'])){
$allowed = mysqli_query($conn," UPDATE users SET Access = "1" WHERE id = '27' ");
}
if(isset($_POST['insufficient'])){
$notallowed = mysqli_query($conn," UPDATE users SET Access = "0" WHERE id = '453' ");
}
如果这在任何给定点有任何用户交互,请务必小心.
Be careful if this has any user interaction at any given point.
使用准备好的语句,或 带有准备好的语句的 PDO,它们更安全.
脚注:
运行 UPDATE 查询时,最好使用
mysqli_affected_rows()
以获得绝对真实性.When running an UPDATE query, it's best to use
mysqli_affected_rows()
for absolute truthness.- http://php.net/manual/en/mysqli.affected-行.php
否则,您可能会得到误报.
Otherwise, you may get a false positive.
相关文章