首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > PHP > 安全的PHP代码写数据库Mysql写法
【标  题】:安全的PHP代码写数据库Mysql写法
【关键字】:Mysql
【来  源】:http://blog.csdn.net/felio/archive/2006/09/15/1227701.aspx

安全的PHP代码写数据库Mysql写法

Addslashes是一种不安全的写法,有的字符会不全过滤掉
所以要用mysql_real_escape_string来过滤

[code]
// Quote variable to make safe
function quote_smart($value) {
   // Stripslashes
   if (get_magic_quotes_gpc()) {
       $value = (stripslashes($value));
   }
   // Quote if not integer
   if (!is_numeric($value) || $value[0] == '0') {
       $value =  mysql_real_escape_string($value);
   }
   return $value;
}
[/code]

说明:。
 1.看看magic_quotes_gpc是否开,如果开就要去掉其' " NUL 前面的 转义,让mysql的转义来完成
2.用mysql的转义

最后要注意的是:
%和_也是个不安全的字符,尤其是在 SQL里有like 时,破坏性代码没试

参考:

http://cn.php.net/manual/zh/function.addslashes.php
http://www.php.net/manual/en/function.mysql-real-escape-string.php
http://www.php.net/manual/en/security.database.sql-injection.php
http://cn.php.net/manual/zh/function.mysql-real-escape-string.php

ASP adodb.stream 取 Win32 .bmp 图片完整文件头信息 By shawl.qiu:【上一篇】
有关全表扫描的讨论:【下一篇】
【相关文章】
  • 安装mysql
  • 如何将struts和mysql连上呢?
  • PHP+MySQL实例
  • php/mysql/apache/smarty学习资料
  • MySQL提供用C编程语言编写的客户机库
  • Mysql #1251 错误的解决方案
  • 基于FreeBSD+MySQL高性能数据库开发
  • 服务器优化——Sysctl、Apache、MySQL
  • 在tar安装的MYSQL机器上安装DBD
  • MySQL在Windows下的编程配置
  • 【随机文章】
  • 《神话》冷血不冷—浅谈冷斗
  • Visual C++实现Flash动画播放
  • 对比package版本
  • DNN模块开发系列文章(5)——DNN中的通用控件(上)
  • WDM驱动程序入门(1)——HelloWDM
  • 基于混合TCP-UDP的HTTP协议实现方法
  • re: 将CAB文件用stsadm工具安装到GAC中
  • OpenNMS常问问题 All-in-One (更新:2006-2-21 14:10)
  • 汉字拼音的一个解决方法(初具使用价值)
  • 从 Visual Basic 6.0 到 Visual Basic.NET 的转换(3)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.