|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
我在使用表单处理信息时发现,对文本域的处理不准确。例如下面的一个表格: --------------------------------------------------------------- <html> test.php <? 上面的例子是用来测试的,主要是想完成用户可以输入一个文件名,然后可以输入文件的内容。确认后可以在服务器上保存文件。下面简朴地说明一个两个文件的内容。 test.html 中有一个表单,里面有一个文本框和一个文本域。文本框用来输入要保存的文件名,文本域 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 但是假如服务器我无法改动怎么办?于是又查阅了一下字串符处理函数,我发现stripslashes()函数就可以完成这个工作。这样首先把PHP.ini改成原来的样子,再修改test.php如下: -------------------------------------------------- 还有要注重的是,假如你想做一个修改文件内容的应用。如,首先把文件内容读出来,放入到文本域中,用户可以进行修改。那么当文件中有特别的符号,如"<",">","&" 符等,直接显示就会与实际内容不符。没关系,PHP还提供了htmlspecialchars()函数将特别字符转变成HTML 的字串格式,这样显示与处理都是准确的了。 这是我在处理文本域时发现的一个问题,希望能对你有帮助! 返回类别: 教程 上一教程: 简朴的页面缓冲技术(一) 下一教程: 利用 window_onload 实现select默认选择 您可以阅读与"关于使用文本域(TextArea)的一个问题"相关的教程: · 给WIN98下使用APACHE的弟兄们的一个好东西:Apache Manager,不会再有那个DOS窗口了! · 这是我在做的一个系统中的新闻增加程序,可以上传图片,也可以输入绝对大于4K的内容(在textarea中),... · 关于使用 session_start 出现的 headers already sent错误的解释 · 关于PHP中操作MySQL数据库的一些要注重的问题 · 用文本文件制作留言板提示(下) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |