Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.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/5/sql/83.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_Sql_Equals_Sign - Fatal编程技术网

Php 当我用“内容”更新sql表行时=&引用;出现了一个错误

Php 当我用“内容”更新sql表行时=&引用;出现了一个错误,php,sql,equals,sign,Php,Sql,Equals,Sign,我想运行以下命令: UPDATE users SET about="$about" ; 但是当我的$about包含=时,脚本会出错并执行以下操作: $about="<img src=somevalue.jpg />"; $about=”“; 脚本会在数据库中添加以下内容: <img src 仅此而已。尝试使用双单引号 $about = '<img src=somevalue.jpg />'; $query = "UPDATE users SET about

我想运行以下命令:

UPDATE users SET about="$about" ;
但是当我的
$about
包含
=
时,脚本会出错并执行以下操作:

$about="<img src=somevalue.jpg />";
$about=”“;
脚本会在数据库中添加以下内容:

<img src


仅此而已。

尝试使用双单引号

$about = '<img src=somevalue.jpg />';
$query = "UPDATE users SET about='$about'";
$about='';
$query=“更新用户集关于=”$about';
作为旁注,如果变量的值来自外部,则查询易受攻击。请看下面的文章,了解如何预防它。通过使用
PreparedStatements
可以避免在值周围使用单引号


  • 这被称为“sql注入”。不管怎样,你必须处理好它,所以用谷歌搜索它


    您必须转义要在语句内部使用的所有输入,否则任何事情都可能发生。最好不要使用简单地包含可变内容的语句,而是使用更好的引擎。看看
    PDO
    及其工作方式。您可以“准备”一条语句,并将参数作为数组进行传递。PDO根据需要注意干净地逃生。那样更安全

    问题在于在字符串周围加引号。我不太熟悉php如何替换字符串中的变量,但您可以在MS SQL server中尝试以下操作:


    Set about=“'$about'”

    您是否已回显结果查询?同样的问题再次出现,但谢谢。我试图做一些其他的事情——只是不使用,而是使用一个函数img($src){echo”“;},但是当我对表单元格的内容进行行操作时,该函数不起作用。