Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么赢了';我的第一个sql语句没有运行_Php_Mysql_Sql - Fatal编程技术网

Php 为什么赢了';我的第一个sql语句没有运行

Php 为什么赢了';我的第一个sql语句没有运行,php,mysql,sql,Php,Mysql,Sql,当我按下一个按钮时,我有一个if语句。我还有一个名为“输入”的下拉选项表单。 我正在尝试这样做,当按下按钮时,活动字段重置为“0”,然后更新为“1”,其中它与输入字段相等。我让第二部分工作,但第一部分不工作 //get table $sql = "SELECT * FROM Widget"; //name variable $result2=mysqli_query($dbc, $sql); //button begins if(isset($_POST['Wactive'])) {

当我按下一个按钮时,我有一个if语句。我还有一个名为“输入”的下拉选项表单。 我正在尝试这样做,当按下按钮时,活动字段重置为“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'";
}

首先,您需要过滤数据。然后执行查询。您最好使用数字命名查询,以免覆盖任何内容

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);
}

首先,您需要过滤数据。然后执行查询。您最好使用数字命名查询,以免覆盖任何内容

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);
}

首先,您需要过滤数据。然后执行查询。您最好使用数字命名查询,以免覆盖任何内容

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);
}

首先,您需要过滤数据。然后执行查询。您最好使用数字命名查询,以免覆盖任何内容

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);
}



$sql
是第二个的两倍,它会覆盖第一个,因此不会运行。此外,没有显示执行任何查询的代码

$sql
被使用两次,第二次使用的代码会覆盖第一次使用的代码,因此它不会运行。此外,没有显示执行任何查询的代码

$sql
被使用两次,第二次使用的代码会覆盖第一次使用的代码,因此它不会运行。此外,没有显示执行任何查询的代码

$sql
被使用两次,第二次使用的代码会覆盖第一次使用的代码,因此它不会运行。此外,没有显示执行任何查询的代码

两个查询都没有执行,都使用相同的变量名,因此相互覆盖您的问题不清楚,但清楚的是您对SQL注入非常开放。更改了标题以使问题更清楚,我将尝试重命名变量Dagoneither执行查询时,两个变量都使用相同的变量名,因此相互覆盖您的问题不清楚,但清楚的是您对SQL注入非常开放。更改标题以使问题更清楚,我将尝试重命名变量Dagoneither执行查询时,两个变量都使用相同的变量名,因此相互覆盖您的问题不清楚,但很清楚的是,你对SQL注入非常开放。更改了标题以使问题更清楚,我将尝试重命名变量Dagoneither执行查询时,两者都使用相同的变量名,因此相互覆盖你的问题不清楚,但有一点很清楚,那就是你对SQL注入持开放态度。为了让问题更清楚,我更改了标题,我将尝试重命名变量Dagoni如果单击按钮,它将执行SQL语句规划当然可以帮助人们理解他们哪里出了错;是你干的+1 ;-)@Fred ii-不回答密码感觉很有趣,但有时最好不要回答to@Dagon我同意。这里的许多高级代表成员就是这样做的,他们的写作方式(就像你所做的那样)给了一个人一种“心理(视觉)地图”来找出错误是在哪里发生的。当它深植于你的脑海中时,你几乎不会再犯同样的错误两次如果单击该按钮,它将执行sql语句计划当然有助于人们理解错误所在;是你干的+1 ;-)@Fred ii-不回答密码感觉很有趣,但有时最好不要回答to@Dagon我同意。这里的许多高级代表成员就是这样做的,他们的写作方式(就像你所做的那样)给了一个人一种“心理(视觉)地图”来找出错误是在哪里发生的。当它深植于你的脑海中时,你几乎不会再犯同样的错误两次如果单击该按钮,它将执行sql语句计划当然有助于人们理解错误所在;是你干的+1 ;-)@Fred ii-不回答密码感觉很有趣,但有时最好不要回答to@Dagon我同意。这里的许多高级代表成员就是这样做的,他们的写作方式(就像你所做的那样)给了一个人一种“心理(视觉)地图”来找出错误是在哪里发生的。当它深植于你的脑海中时,你几乎不会再犯同样的错误两次如果单击该按钮,它将执行sql语句计划当然有助于人们理解错误所在;是你干的+1 ;-)@Fred ii-不回答密码感觉很有趣,但有时最好不要回答to@Dagon我同意。这里的许多高级代表成员就是这样做的,他们的写作方式(就像你所做的那样)给了一个人一种“心理(视觉)地图”来找出错误是在哪里发生的。当它深植于你的脑海中时,你几乎不会再犯同样的错误两次成功了。我现在可以重命名变量并将其发送到数据库。只要在两个字符串分配之间运行查询,就可以使用相同的变量名(并节省一些字节的内存)。啊,但是“为什么”重命名变量,是64000美元的问题@用户3307338;-)他甚至可以使用
mysqli\u query()
而不使用变量
$query
&
$sql
,只要他知道自己在做什么。即使我确定某个查询,我也会将其写入字符串变量中,这使得调试更加容易。我现在可以重命名变量并将其发送到数据库。只要在两个字符串分配之间运行查询,就可以使用相同的变量名(并节省一些字节的内存)。啊,但是“为什么”重命名变量,是64000美元的问题@用户3307338;-)他甚至可以使用
mysqli\u query()
而不使用变量
$query
&
$sql
,只要他知道自己在做什么。即使我确定某个查询,我也会将其写入字符串变量中,这使得调试更加容易。我现在可以重命名变量并将其发送到数据库。只要在两个字符串分配之间运行查询,就可以使用相同的变量名(并节省一些字节的内存)。啊,但是“为什么”重命名变量,是64000美元的问题@用户3307338;-)他甚至可以使用
mysqli\u query()
而不使用变量
$query
&
$sql
,只要他知道自己在做什么