Heim  >  Artikel  >  Backend-Entwicklung  >  PHP实现防止sql注入的通用方法

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

WBOY
WBOYOriginal
2016-07-25 08:45:29972Durchsuche
  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


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn