作者SyaoranX (小狼)
看板Web_Design
标题[问题] 有关textarea问题
时间Thu Dec 6 19:06:45 2007
我在做一个线上电子报系统,架构如下
index.htm --(POST传递)--> mailcheck.php --(POST传递)-->mail.php
(含有form) 检查输入、output预览 寄送邮件(mail func)
我碰到的问题是…
因为在mailcheck.php要把寄出的电子报输出预览,而又要post传给mail.php
所以我的做法是在mailcheck开一个form,里面的栏位都设成hidden,但是问题来了
如果我在index.htm里面有个textarea,我目前是用
[code]
<div style='visibility:hidden;'><textarea name="context" value="<?echo
$msg;?>"> </textarea></div>
[/code]
这个方法把textarea隐藏。但是,当我传到mail.php的时候,原本输入含html语法的
资料会出问题。
如我输入:
[code]
<p align="center">test</p>
<h1 align="right">Titile</h1>
<font color="blue">Blue color</font>
[/code]
我在mailcheck.php看到的html码为:
[code]
<div style='visibility:hidden;'><textarea name="context" value="
<p align=\"center\">test</p>
<h1 align=\"right\">Titile</h1>
<font color=\"blue\">Blue color</font>"> </textarea></div>
[/code]
仔细看看括号的匹配并没有什麽问题,但是传到mail.php时,我用以下语法echo
[code]
$msg=stripslashes($_POST["context"]);
echo "====<br> ".stripslashes($msg)." <br> ====";
[/code]
却变成了
[code]
====<br> test</p>
<h1 align="right">Titile</h1>
<font color="blue">Blue color</font>"> <br> ====
[/code]
第一行的<p align=\"center\">被吃掉了
最後一行多出了">
不知道这样用textarea好不好…
我也试过把textarea的value改成单引号:value='...'
但是这样好像就没办法把资料传给下一个网页
不知道有没有什麽好方法解决?或是能不能不用textarea传?
感谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.122.118.132
1F:推 forkome:有个小疑问,这边指的预览是不是只有语法上的预览呢? 12/06 19:42
2F:推 SyaoranX:是的楼上^^"。因为显示出来会多「">」看html才发现原因 12/06 21:34