欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP实现防止sql注入的通用方法

程序员文章站 2024-02-01 15:31:00
...
  1. function inject_check($sql_str) {
  2. return eregi('select|insert|and|or|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile', $sql_str);
  3. }
  4. function verify_id($id=null) {
  5. if(!$id) {
  6. exit('没有提交参数!');
  7. } elseif(inject_check($id)) {
  8. exit('提交的参数非法!');
  9. } elseif(!is_numeric($id)) {
  10. exit('提交的参数非法!');
  11. }
  12. $id = intval($id);
  13. return $id;
  14. }
  15. function str_check( $str ) {
  16. if(!get_magic_quotes_gpc()) {
  17. $str = addslashes($str); // 进行过滤
  18. }
  19. $str = str_replace("_", "\_", $str);
  20. $str = str_replace("%", "\%", $str);
  21. return $str;
  22. }
  23. function post_check($post) {
  24. if(!get_magic_quotes_gpc()) {
  25. $post = addslashes($post);
  26. }
  27. $post = str_replace("_", "\_", $post);
  28. $post = str_replace("%", "\%", $post);
  29. $post = nl2br($post);
  30. $post = htmlspecialchars($post);
  31. return $post;
  32. }
复制代码

PHP, sql