Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->编程语言 ->CGI ->正文

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

来源:Linuxdby.com 作者:Webmaster 时间:2007-04-28 点击: [收藏] [投稿]

我在编程中遇到过一些这样的问题,就是其他任何操作都正常,但是,用户在页面上输入的数据却写不到数据库中去。后来,经过仔细的检查,发现用户输入的数据中含有一些特殊字符,例如单引号、双引 号等。
这时,可以采用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方法的本质就是使用一种特殊的符号作为数值的分界符,避免和我们常用的特殊字符发生冲突,导致数据库操作失败。

 




 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Perl编程中的mysql数据库连接使用方法   下一篇:关于绝对路径、相对路径和URL

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号