关闭

工作中遇到的

834人阅读 评论(0) 收藏 举报

今天,在工作中,发现一个问题,简要描述:用perl写的cgi程序获取表单元素的值,用获得的值拼接sql语句,假如有个表单元素这样写
<input type=hidden name=type_id value=$type_id>,其中$type_id 由perl写成的同一个cgi程序执行时写入。
另设一个表单元素,供用户输入值使用:<input type=text name=pro>,
在cgi中获得表单元素的值:
my $type_id = $cgi->param("type_id");
my
$pro = $cgi->param("pro");
拼接sql语句时:$sql = "insert into t_t set type=$type_id,prod='$pro'";
假如$type_id=3,$pro=SMS
然后输出这个sql,发现sql=insert into t_t set type=3就断掉了,后面的部分就没了。
试了多次,思索半天后将<input type=hidden name=type_id value=$type_id>改写为:<input type=hidden name=type_id value="$type_id">
这样拼接出的sql语句就正常了:sql=sql=insert into t_t set type=3,prod='SMS'

不知道这是否和html的写法标准有关。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:68139次
    • 积分:928
    • 等级:
    • 排名:千里之外
    • 原创:22篇
    • 转载:11篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论
    友情链接