快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

关于使用文本域(TEXTAREA)的一个问题

我在使用表单处理信息时发现,对文本域的处理不准确。例如下面的一个表格:test.html

<html>
<head>
<title> TextArea Test </title>
</head>
<body bgcolor="#FFFFFF">
<form method="post" action="test.php">
文件名<input type="text" name="filename" value="test.txt"><br>
内容:<br>
<textarea name="content" cols="80" rows="20">"aaa" "bbb"</textarea><br>
<input type="submit" name="Submit" value="写好了">
<input type="reset" name="Submit2" value="重写">
</form>
</body>
</html>

test.php

<?
$fp=fopen($filename, "w");
fwrite($fp, $content);
fclose($fp);
echo "OK";
?>
------------------------------------------------------

  上面的例子是用来测试的,主要是想完成用户可以输入一个文件名,然后可以输入文件的内容。确认后可以在服务器上保存文件。下面简朴地说明一个两个文件的内容。

  test.html 中有一个表单,里面有一个文本框和一个文本域。文本框用来输入要保存的文件名,文本域
用来输入文件的内容。文件名缺省设为"test.txt",文件内容缺省设为"aaa" "bbb"。表单的动作为"post",执行文件为"test.php"。

  test.php则很简朴。打开指定文件,写入文件内容,关闭文件,输出"OK"。

  原来我想文件内容应该是"aaa" "bbb",但结果并不是这样,而是"aaa" \\"bbb\\"!在每一个双引号(")和反斜线()(其实还有单引号和空(nul))前都加上了一个转义用的反斜线。这是为什么?于是,我查询了PHP中文手册,看到关于PHP.ini的配置中关于magic_quotes_gpc和magic_quotes_runtime的说明,我知道了是因为PHP给自动处理了。这样,我就将PHP.ini配置中的magic_quotes_gpc和 magic_quotes_runtime
设成了off,结果就准确了。

  但是假如服务器我无法改动怎么办?于是又查阅了一下字串符处理函数,我发现stripslashes()函数就可以完成这个工作。这样首先把PHP.ini改成原来的样子,再修改test.php如下:

--------------------------------------------------
<?
$fp=fopen($filename, "w");
$content=stripslashes($content);
fwrite($fp, $content);
fclose($fp);
echo "OK";
?>
--------------------------------------------
  再检查结果,完全符合我的需要!

  还有要注重的是,假如你想做一个修改文件内容的应用。如,首先把文件内容读出来,放入到文本域中,用户可以进行修改。那么当文件中有特别的符号,如"<",">","&" 符等,直接显示就会与实际内容不符。没关系,PHP还提供了htmlspecialchars()函数将特别字符转变成HTML 的字串格式,这样显示与处理都是准确的了。

  这是我在处理文本域时发现的一个问题,希望能对你有帮助!
返回类别: 教程
上一教程: 用正则表达式判定一个简朴的用户登陆的例子
下一教程: JAVA 应用程序的发布

您可以阅读与"关于使用文本域(TEXTAREA)的一个问题"相关的教程:
· 存储.PROPERTIES文件的一个问题
· 关于JAVA import 的一个小问题
· 部署OGSA-DAI的Quickview client时的一个小问题
· JSP关于自定义标签开发及使用问题
· 使用JSP + JAVABEAN + XML 开发的一个例子
    微笑服务 优质保证 索取样品