我正在制作一个自定义wordpress主题 - 还有一个部分我通过一个受wpdb-> prepare保护的查询来提取数据。
当我查看生成的文本时,在转义斜杠中拉出的文本卡在那里。 EG冲浪起来变得冲浪起来。
无论如何 - 我的主要问题是 - 如果我将pulllashes应用于拉出后的几个查询字段,我是否会损害wpdb-> prepare所应用的安全性?
例如
'altText' => stripslashes($myrow_home->alttext),
谢谢你,mro。
答案 0 :(得分:1)
Obvisoulsy,wpdb-> prepare()为DB使用准备字符串,因此它会转义引号以避免注入所有类型。
我真的不明白为什么你会为DB以外的其他用途拦截一个准备好的值,但是剥离它是安全的,前提是你在数据库查询后不使用striplashed值!
答案 1 :(得分:0)
简短的回答是你可以使用stripslashes而不会影响wpdb-> prepare的安全性。
来自WP功能参考:
与此类中执行SQL查询的所有函数一样,您必须SQL转义所有输入(例如, wpdb-> escape($ user_entered_data_string))。
请查看http://codex.wordpress.org/wpdb_Class#Protect_Queries_Against_SQL_Injection_Attacks了解详情。
另请务必阅读:http://codex.wordpress.org/Data_Validation
在创建主题之前,了解WP数据验证的工作原理非常重要。