-4

php函数防止SQL注入。

我正在开发一个 Wordpress 项目,我要求用户插入他们需要的一些数据。不过,我已经在数据库中创建了新表供我使用,现在我需要确保安全并防止 SQL 注入。

为此,我创建了以下 var。

function sql_escape($var){
if(is_string($var)) {
$result = strip_tags(addslashes(str_replace(array('SELECT', 'select', 'DELETE', 'delete', 'INSERT', 'insert', 'JOIN', 'join', 'CREATE', 'create', 'UPDATE', 'update', 'FROM', 'from', 'WHERE', 'where', '*', '=', '+', '-', '<', '>'), '...', $var)));
return $result;
}

if( is_numeric($var) || is_float($var) ){
    $result = $var;
    return $result;
}}

你认为这够了吗?感谢大家的支持。

4

1 回答 1

0

为了清理您的 SQL 查询,您应该使用准备好的语句

在 wordpress 开发环境中,你有这个:

$wpdb->prepare(
  "SELECT something FROM table WHERE foo = %s and status = %d",
  $name, // an unescaped string (function will do the sanitization for you)
  $status // an untrusted integer (function will do the sanitization for you)
)

来源:Worpress 开发者文档

于 2018-12-27T09:43:35.873 回答