Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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 在INSERT INTO语句中使用WHERE_Php_Mysql - Fatal编程技术网

Php 在INSERT INTO语句中使用WHERE

Php 在INSERT INTO语句中使用WHERE,php,mysql,Php,Mysql,我试图让用户在图像中插入主题。我知道我不能将WHERE子句与INSERT INTO语句结合使用,我知道我应该使用SELECT。我对mysql非常陌生,我不理解我试图在谷歌上搜索的结果。所以我需要一个更具体的答案;) 不能在现有行中使用INSERT,请尝试UPDATESQL类似 UPDATE images SET subject = '...' WHERE id=x; 您不能在INSERT语句中使用WHERE。如果您想更新现有的行,或代码< > INS/,如果没有 < < /C> >插入新行,请

我试图让用户在图像中插入主题。我知道我不能将WHERE子句与INSERT INTO语句结合使用,我知道我应该使用SELECT。我对mysql非常陌生,我不理解我试图在谷歌上搜索的结果。所以我需要一个更具体的答案;)


不能在现有行中使用
INSERT
,请尝试
UPDATE
SQL类似

UPDATE images SET subject = '...' WHERE id=x;
  • 您不能在
    INSERT
    语句中使用
    WHERE
    。如果您想更新现有的行,或代码< > INS/<代码>,如果没有<代码> < < /C> >插入新行,请考虑尝试<代码>更新>代码>
  • 不要使用
    mysql\u query
    函数,因为它已被弃用。试着用或代替

  • 不要在查询中使用未过滤的输入

    • 如果您已经有
      image\u id
      值,那么您应该
      UPDATE
      您的表而不是
      INSERT

    • 在将变量插入表之前,应先转义变量。通过
      mysql\u real\u escape\u string()

    试试这个:

    $subject = mysql_real_escape_string($_POST['subject']) ;
    $id      =mysql_real_escape_string($_POST['id'] )   ;
    $classed = mysql_query("UPDATE images 
                            SET subject = '".$subject."' 
                            WHERE image_id='".$id."' ");
    

    INSERT
    用于创建新行,
    其中
    用于查找现有行。现在还不清楚您试图对组合执行什么操作。在数据库查询中永远不要使用未经筛选的用户输入(SQL注入危险!)是否要更新现有行?(恰当命名的)命令是
    UPDATE
    。这就是我要找的。它对我有用。正如我所说,我对Mysql非常陌生。学会了很多,谢谢。考虑接受EndoSmie答案,它更好,更完整,包括PHP代码,并以适当的方式处理用户输入。
    $subject = mysql_real_escape_string($_POST['subject']) ;
    $id      =mysql_real_escape_string($_POST['id'] )   ;
    $classed = mysql_query("UPDATE images 
                            SET subject = '".$subject."' 
                            WHERE image_id='".$id."' ");