我为wordpress写了一个存储餐厅菜单项的插件。但每当使用撇号时,wordpress都会在管理员和前端使用斜杠对其进行转义,并在每次保存时不断向文本添加斜杠。
这是我的post代码的摘录和示例:
$dinnerEntree2 = $_POST[$dinnerEntree_option];
for ($i=1; $i<= $dinner_menu_item_number_saved; $i++) {
// entree dinner_menu_entree_option
$dinnerEntree = "dinner_menu_".$i."_entree";
$dinnerEntree_saved = "dinner_menu_".$i."_entree_save";
$dinnerEntree_option = "dinner_menu_".$i."_entree_option";
$dinnerEntree_saved2 = get_option($ingredients);
$dinnerEntree2 = $_POST[$dinnerEntree_option];
if ($dinnerEntree_saved2 != $dinnerEntree2)
if(!update_option($dinnerEntree,$dinnerEntree2))
$message='failed to save large entree';
// end of entree在输入表单字段中:
<input type="text" name="dinner_menu_<?php echo $i ?>_entree_option" value="<?php echo get_option($dinnerEntree); ?>" size="40"/></span>我已经尝试过了,但是没有成功。这个问题已经讨论了很多年,但我还没有看到wordpress的最终解决方案。魔术引号在我的服务器上关闭了....有什么想法吗?
发布于 2012-09-11 15:15:24
使用
$dinnerEntree2 = stripslashes_deep( $_POST[$dinnerEntree_option] );参考:stripslashes_deep()
注意:它应该在任何与$wpdb交互的命令之前(而不是在命令中)使用。
https://stackoverflow.com/questions/12362704
复制相似问题