当我按下按钮时,我有这个if语句。我还有一个名为“input”的下拉选项表单。 我试图这样做,当按下按钮时,活动字段重置为'0',然后更新为“1”,它等于输入字段。我得到第二部分工作,但第一部分不起作用
//get table
$sql = "SELECT * FROM Widget";
//name variable
$result2=mysqli_query($dbc, $sql);
//button begins
if(isset($_POST['Wactive'])) {
//take the input and set it to a variable
$id = $_POST['input'];
// reset the active field. This doesn't work but the sql works
// when I do it directly in the database
$sql = "Update `Widget` SET Active = '0'";
//set active to 1 where id = the input(this works)
$sql = "Update `Widget` SET Active = '1' WHERE `Widget_ID` = '$id'";
}
答案 0 :(得分:2)
$sql
使用两次,第二次写入第一次,因此它不会运行。此外,没有显示执行任何查询的代码
答案 1 :(得分:1)
首先,您需要过滤数据。然后执行查询。最好用数字命名查询,不要覆盖任何内容。
if(isset($_POST['Wactive']))
{
$id = intval($_POST['input']);
$sql1 = "Update `Widget` SET Active = '0'";
$query1 = mysqli_query($dbc, $sql1);
$sql2 = "Update `Widget` SET Active = '1' WHERE `Widget_ID` = $id";
$query2 = mysqli_query($dbc, $sql2);
}