专注于高品质PHP技术等信息服务于一体 [STIEMAP] [RSS]

百度提供的广告:
PHP
当前位置:首页 > 技术文档 > PHP >  > 
高效安全的 mysql php 程序
高效安全的 mysql php 程序
php 5.3 以下版本默认自动转义 GET POST COOKIE REQUEST 中的 ' " 在前面添加 \' \" 以保证数据库安全。
php 5.3 及以上版本默认php.ini 中设置是关闭状态,如果是自己的服务器可以修改php.ini 开启此功能。
也可以通过 get_magic_quotes_gpc() 来获取php.ini中的状态,在逐个循环GET POST 元素进行addslashes 转换
数字形和字符形参数安全
数字形参数使用 intval 进行过滤,不过要注意int 的最大值问题。在能预知最大值的情况下可以使用,如果超出范围可以使用 preg_replace来取出数字
function safeIntval($val)
{
    $val = preg_replace('/[^\d]/','',$val);    
    $val = empty($val) ? 0 : $val;
    return $val;    
}
字符形参数使用上述方法进行第一次过滤
可以保证SQL 安全,但不能保证JS 攻击。对于非必要显示HTML的字段进行UUB转换或其它转换保证数据库安全。
除测试环境请勿使用root 用户部署在真正环境中。
root 可以读写文件,应该使用普通用户。授予相应最低的权限。