Php 在特定行中插入值的查询错误

Php 在特定行中插入值的查询错误,php,mysql,Php,Mysql,我正在尝试执行以下查询,其中我希望在相应行的firstime列中添加一个值$netid和mac $query="INSERT INTO node WHERE netid='".$netid."' AND mac='" . $_GET['mac'] . "' (firstime) VALUES ('" . $firstcheck . "')"; mysql_query($query, $conn) or die("Error executing query: ".mysql_error($conn

我正在尝试执行以下查询,其中我希望在相应行的firstime列中添加一个值$netid和mac

$query="INSERT INTO node WHERE netid='".$netid."' AND mac='" . $_GET['mac'] . "' (firstime) VALUES ('" . $firstcheck . "')";
mysql_query($query, $conn) or die("Error executing query: ".mysql_error($conn));
尝试时,我收到以下错误消息:

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解在“WHERE netid='28'和mac='24:A4:3C:40:4D:EB'(firstime)值附近使用的正确语法('2014-01-16 12:0'在第1行)


有什么想法吗?

您不能使用
WHERE
子句进行
INSERT
查询,因为它毫无意义

以下是有关其正确语法的文档页:


科学猜测:您需要的是您不能使用
WHERE
子句进行
INSERT
查询,因为它毫无意义

以下是有关其正确语法的文档页:


科学猜测:你需要的是

也许你想要一个
更新

update node
    set firsttime = '" . $firstcheck . "'
    WHERE netid = '".$netid."' AND mac = '" . $_GET['mac'] . "';
insert
在表中插入新行,而不是在行中插入新值


update
更新行中的值。

也许您需要
更新:

update node
    set firsttime = '" . $firstcheck . "'
    WHERE netid = '".$netid."' AND mac = '" . $_GET['mac'] . "';
insert
在表中插入新行,而不是在行中插入新值


update
更新一行中的值。

列和值声明之后必须有WHERE条件

INSERT INTO node  (firstime) VALUES ('" . $firstcheck . "') WHERE netid='".$netid."'    
AND mac='" . $_GET['mac'] . "'";

同时使用准备好的语句并清理用户提交的数据,以防止SQL注入,这是一种明显的威胁。

列和值声明后必须处理WHERE条件

INSERT INTO node  (firstime) VALUES ('" . $firstcheck . "') WHERE netid='".$netid."'    
AND mac='" . $_GET['mac'] . "'";

还应使用准备好的语句并清理用户提交的数据,以防止SQL注入,这是一种明显的威胁。

您应该知道此代码易受SQL注入攻击。您应该知道此代码易受SQL注入攻击,以及中的
何处
<代码>插入
的意思是?是的,它确实必须更新而不是插入。我明白了,基于WHERE条件插入是完全不可能的,因为要创建一个新记录,所以绝对没有WHERE条件。我可以道歉。这也可以。SQL注入也是一个很好的主题,但是你有任何链接吗建议我在哪里可以做更多的调查?以及
INSERT
中的
where
意味着什么?是的,它确实必须更新而不是插入。我明白了,基于where条件插入是完全不可能的,因为要创建一个新记录,所以绝对不存在where条件。我可以吗道歉。这也没关系。SQL注入也是一个很好的话题,但是你有任何链接可以建议我在哪里可以做更多的调查吗?