首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$wpdb,ezSQL类转义/筛选?

$wpdb,ezSQL类转义/筛选?
EN

Stack Overflow用户
提问于 2012-05-13 21:25:43
回答 1查看 407关注 0票数 2

我的问题是关于wordpress中的$wpdb方法。例如,在运行这些方法之前:

代码语言:javascript
复制
$wpdb->query
$wpdb->get_results
$wpdb->get_var ...

我们需要转义/过滤输入吗?这是每种方法都需要的/首选的,还是只有一些方法?

例如,这是否足以处理所有非法字符(例如wordpress代码):

代码语言:javascript
复制
$wpdb->query( 
    $wpdb->prepare( "DELETE FROM $wpdb->postmeta WHERE post_id = '13' AND meta_key = 'gargle'" ,$id, $key )
);

编辑:

如下面的答案所示,实际上,对于每个用户输入,您应该在插入数据库之前检查参数值。不仅仅是安全问题,还有web应用程序的一般逻辑(例如,在前端解析某些内容,如果你在数据库中包含的数据不是你所期望的--即使从安全的角度来看,这些数据也是毫无疑问的),最终也不会给最终用户带来适当的结果。

尽管如此,上面提到的wordpress的准备方法-是从sql注入的角度来保证和消除任何安全问题的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-13 22:45:15

wordpress代码索引页中的示例有一个错误。他们应该使用%d和%s,而不是'13‘和'gargle':

代码语言:javascript
复制
$wpdb->query( 
$wpdb->prepare( 
    "DELETE FROM $wpdb->postmeta
     WHERE post_id = %d
    AND meta_key = %s
    ", $id, $key )
);

但是,每次都应该检查变量的内容类型。你需要确保类型是正确的。例如,检查“post_id”变量内容是否为整数。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10575385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档