Rih*_*rds 6 php mysqli sql-injection
所以我想知道这是否安全,用户不会进行任何SQL注入,数字只会是整数?getArticle函数中的$ id绑定到SQL查询.
<?php $id = (isset($_GET['id']) && is_int((int)$_GET['id'])) ? (int)$_GET['id'] : false ?>
<?php $news = $class->getArticle($id) ?>
Run Code Online (Sandbox Code Playgroud)
到目前为止,我测试它工作正常,但因为我不完全确定我宁愿问你guyz!好吧,人们说准备好的陈述可以解决问题.他们真的会吗?就像,我可以完全确定如果将参数绑定为整数,那么它将是整数吗?
提前致谢!
Sar*_*raz 10
您只需键入将它们转换为正确的类型:
$number = intval($_GET['id']);
$string = mysql_real_escape_string(strval($_GET['str']));
Run Code Online (Sandbox Code Playgroud)
确保你得到你期望的东西.
更好的解决方案是使用Prepared语句来避免sql注入.
| 归档时间: |
|
| 查看次数: |
4750 次 |
| 最近记录: |