当前位置:首页>网络学院>程序开发>CGI/Perl教程>文章内容

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

[ 来源: | 作者: | 时间:2007-07-16 | 收藏 | 推荐 ] 【



我在编程中遇到过一些这样的问题,就是其他任何操作都正常,但是,用户在页面上输入的数据却写不到数据库中去。后来,经过仔细的检查,发现用户输入的数据中含有一些特殊字符,例如单引号、双引 号等。
这时,可以采用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});

IT资讯之家 www.it55.com

my $city=$dbh->quote("Xi'an");
$dbh->do(qq{insert into citylist values($city)});
$dbh->disconnect(); vd;k;l www.it55.com rdfg

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

vd;k;l www.it55.com rdfg


(编辑:IT资讯之家 www.it55.com

返回顶部
 

网友评论

[以下评论为网友观点,不代表本站。请自觉遵守互联网相关政策法规,所有连带责任均有评论者自负。]
[不超过250字]

图片文章