在SAVE_POST挂接中插入带有wpdb的包含引号的字符串时出现问题

时间:2012-01-18 作者:yan.kun

我在通过wpdb插入wordpress中包含引号的字符串时遇到问题。

我已经为save\\u post编写了一个钩子,并试图通过wpdp->update在表中写入post\\u标题。

字符串直接取自$\\u POST数组。不幸的是,在db中,字符串用转义引号保存。

这是“the”示例将变成->这是以html打印的“the”示例。

我如何防止这种情况?

代码如下所示:

$data = array(  \'post_content\' => $new_content,
                            \'post_title\' => $new_title);

            $wpdb->update(\'wp_\'.$blog_id.\'_posts\', $data, array(\'ID\' => $post_id));

2 个回复
SO网友:Stephen Harris

尝试stripslashes. 看到了吗php documentation.

为了澄清,插入斜杠是为了在插入数据库之前转义内容。要显示内容时,应使用上述功能。

SO网友:Otto

字符串直接取自$\\u POST数组。

WordPress自动将斜杠转义应用于$\\u POST中的数据。在将发布的数据插入数据库之前,需要对其进行条带斜杠。

结束

相关推荐

Wpdb函数插入不起作用

它不会插入任何内容,若我回显它,它会显示所有内容,但不会在数据库中插入任何内容。表名称正确。代码-global $wpdb; $meta2 = get_post_meta($post->ID, \'customFields\', true); $metas2 = explode(\",\", $meta2); foreach ($meta2 as $meta) { $wpdb->query( $wpdb->prepare(\"INSERT