为什么有这个代码的PHP警告以及如何防止这种情况从mysql注入?

时间:2017-12-11 08:25:57

标签: php mysql

我的文件中有以下代码。 它只会重复空白..当我检查错误日志文件时,我看到了这一点:

2:5

myrange = { 2:5 };  % this does NOT work...
nansok = isnan(mytable{:,2:5};
nansfail = isnan(mytable{:,myrange}); % err: table variable subscripts must be etc. etc.

为什么? 对我来说它看起来很好..

以及如何从sql注入中保护这个简单的代码?

2 个答案:

答案 0 :(得分:2)

  $sql = "SELECT * FROM users WHERE username='$username'";

您忘记将内容设置为select

要保护它,您需要为变量$username

使用预准备语句

答案 1 :(得分:0)

由于声誉较低而将其作为答案发布。

首先,您在select中的查询语法不正确,因为您无法识别要选择的列号如users_name等。如果你得到所有记录,你只需用' *'

" SELECT * FROM users ...";

或使用准备好的陈述的其他答案IN' PDO'您可以从SQL注入中保存,因为通过准备好的语句,您将使用安全参数进行查询。