动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   Cgi/Perl → 阅读文章

 Perl语言中向数据库中写值的特殊字符问题

作者来源: 
阅读 数 582 人次 , 2006-3-29 4:02:00 



我在编程中遇到过一些这样的问题,就是其他任何操作都正常,但是,用户在页面上输入的数据却写不到数据库中去。后来,经过仔细的检查,发现用户输入的数据中含有一些特殊字符,例如单引号、双引 号等。
这时,可以采用dbi的quote方法进行处理。具体的处理过程如下:
举例说明:
需要输入数据库的数据列名为city,值为xi'an
use dbi;
my $dsn="dbi:mysql:$db_name:localhost";
my $dbh=dbi->connect($dsn,$db_user,$db_pass,{raiseerror=>1});

my $city=$dbh->quote("xi'an");
$dbh->do(qq{insert into citylist values($city)});
$dbh->disconnect();

这样,数据就可以顺利的写入数据库了。
其实,quote方法的本质就是使用一种特殊的符号作为数值的分界符,避免和我们常用的特殊字符发生冲突,导致数据库操作失败。

 本文Tags数据库  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:如何在win98/NT上添加perl语言的各种模块
· 下一篇:Perl编程中的mysql数据库连接使用方法
· PerlScript 的介绍之四
· 用Perl语言进行Socket编程之二
· Perl的运算符号字符概述
· 跟我学Perl(3)
· Cgi入门教程之:13 设置口令


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077