清理UPDATE_POST_META的整数输入

时间:2014-11-13 作者:asam

当更新输入始终为整数的post meta时,我应该使用(int) 或者是否有WordPress功能(例如。sanitize_text_field)?

例如:

if(isset($_POST[\'category_id\'])){
    update_post_meta($post->ID, \'category_id\', (int)($_POST[\'category_id\']));
}

3 个回复
SO网友:Marcin

对于整数,KSES没有特殊的函数。

使用(int)intval()absint()

查看更多信息:Data Validation - Integers

SO网友:Annapurna

&safe_id = intval( $_POST[\'category_id\'] );
if ( ! $safe_id ) {
  $safe_id = \'\';
}

update_post_meta( $post->ID, \'category_id\', $safe_id );
函数的作用是:将用户输入转换为整数,如果输入是非数值,则默认为零。然后检查该值是否最终为零。如果有,我们将向数据库保存一个空值。否则,我们将保存正确验证的category\\u id。

SO网友:iyrin

使用条件语句检查$_POST[\'category_id\']) 首先是整数。PHP函数是is_int()1

if(isset($_POST[\'category_id\']) && is_int($_POST[\'category_id\'])){
    update_post_meta($post->ID, \'category_id\', $_POST[\'category_id\']);
}
您还应该在$\\u POST数据上删除空白,因为is_int() 如果字符串有空格,将返回false2.

结束

相关推荐

在WordPress搜索表单中将<input type=“Submit”>替换为<Button type=“Submit”>是否保存

我这样问是因为有一个庞大的用户群,并且可能与插件发生冲突。我的意思是,2013年的主题以按钮为目标.searchform [type=\"submit\"] 即使是它也有.searchsubmit 不管怎样,还是要上课。可能是因为一些CSS的特殊性和一些声明不知道的东西。但乍一看,这对我来说没有多大意义。但无论如何,这与主题无关。你猜有多少插件会因为目标不是由类决定而失败?我需要更喜欢这个按钮,因为它可以正确地与引导一起工作.input-group stuff和input没有。中的值不适用于其截止宽度。文