作者ottokang (猫猫的大玩偶)
看板PHP
标题Re: [请益] <textarea>的资料存到资料库..怎麽防止 …
时间Sun Jan 8 14:17:16 2006
※ 引述《clifflu (缺钱啦 @@)》之铭言:
: ※ 引述《picachuxyz (XHTML&CSS&PHP)》之铭言:
: : 从<textarea>表单写入资料库的资料
: : 可以防止写入html标签或js程式吗?
: : 如果不行,资料库里面的资料有html标签或js程式
: : 怎麽防止在网页上产生效果?
: : <code>吗?
: : 还是? 谢谢
: htmlspecialchars()
: 另外对怕 user data 干扰 php code 所用得则是 addslashes()
: 而 addslashes 又可能因开启 magic_quote 受到影响 (而变成不需要用 @@)
说到magic_quote,在php.ini中有分三设定
# magic_quotes_gpc
顾名思义就是对GET、POST、Cookie的资料做addslashes的动作
gpc是以上三个字的缩写,预设值是开启
# magic_quotes_runtime
对PHP之外进来的资料(例如资料库、文字档)做addslashes的动作
预设值是关闭
# magic_quotes_sybase
用'来取代\作为跳脱字元,预设值也是关闭
奇怪的是,在php.ini的注解中说关闭magic_quotes_gpc可以增加效能
但是说实话,在开发程式的时候
基本上只要是GET、POST、Cookie的资料几乎都要做addslashes的动作
(现在无聊的骇客很多)
所以我想就算开启magic_quotes_gpc,效能也不会差太多
又可以得到比较整洁的程式码,建议大家在开发程式的时候开启这个选项
补充说明,要知道伺服器有没有开启magic_quotes_gpc
可以使用get_magic_quotes_gpc()函数
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.74.74.116
1F:→ clifflu:改个标题吧, magic_quote 和这标题是完全无关的 XD 01/08 16:53