已掉线,重新登录

首页 > 绿虎论坛 > 杂类 > 学习 (发帖)

标题: 惊恐 单引号被吃了!

作者: @Ta

时间: 2012-07-09

点击: 3170

运行过程
index.php
<input name="a" value='{$cookie}'/>
save.php
用cookie保存这个变量 保存前加上这个stripslashes();
返回index.php
//$cookie=stripslashes($_COOKIE['a'])
echo
$_COOKIE['a'];
凡是之前有一个单引号的输入框里的内容都消失了双引号没有事!

[隐藏样式|查看源码]


『回复列表(10|隐藏机器人聊天)』

1. dirview
(/@Ta/2012-07-09 13:03//)

2. %E8%AE%BA%E5%9D%9B.jpg
(/@Ta/2012-07-09 13:07//)

3. 在输出之前你需要使用htmlspecialchars()转义特殊符号,否则你可能在输出的html中看到
<input value='这是一个'string'类型的变量'/>
很显然它的引号嵌套错误。
(/@Ta/2012-07-09 15:18//)

4. @老虎会游泳 求指点 
原来单双引号出现在<input value="这里面会被当成html内容解析"/>
 我不想转义成html预定义字符串 还有别的解决方法不??
(/@Ta/2012-07-09 15:19//)

5. 正确的方法如
$a="这是一个'string'类型的变量";
$echo_a=htmlspecialchars($a);
echo "<input value='{$echo_a}'/>";
(/@Ta/2012-07-09 15:21//)

6. @老虎会游泳 这个我想到了
求别的解决方法 有不?
(/@Ta/2012-07-09 15:22//)

7. 失望...看来我不应该用cookie保存代码
(/@Ta/2012-07-09 15:25//)

8. <?php
echo
**<a href="index.php"></a>**;
$str_a=str_replace("'","**",$str);
(/@Ta/2012-07-09 15:45//)

9. @郑锋 用base64_encode()编码再保存吧。
(/@Ta/2012-07-09 15:57//)

10. 测试ing
(/@Ta/2012-07-09 16:47//)

回复需要登录

8月29日 16:05 星期五

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1