Html 家 预订 !; 打印“路线选择”; 打印qq!; 打印qq

Html 家 预订 !; 打印“路线选择”; 打印qq!; 打印qq,html,forms,perl,date,Html,Forms,Perl,Date,客户ID:; 打印qq!选择路线ID: 1. 2. 3. 4. 5. 6. 7. 8. 9 10 11 !; 打印qq!旅行日期:; 打印qq!成人票数量: 0 1. 2. 3. 4. 5. 6. 7. 8. 9 10 !; 打印qq!儿童票数量: 0 1. 2. 3. 4. 5. 6. 7. 8. 9 10 !; 亚体{ 打印“试用”\n; } 子打印\u html\u标题\u部分{ 打印“\n”; 打印“\n”; 打印“\n”; } 打印qq!; 打印“卡详细信息\n”; 打印qq 卡片上的

客户ID:
; 打印qq!选择路线ID: 1. 2. 3. 4. 5. 6. 7. 8. 9 10 11
!; 打印qq!旅行日期:
; 打印qq!成人票数量: 0 1. 2. 3. 4. 5. 6. 7. 8. 9 10
!; 打印qq!儿童票数量: 0 1. 2. 3. 4. 5. 6. 7. 8. 9 10
!; 亚体{ 打印“试用”\n; } 子打印\u html\u标题\u部分{ 打印“\n”; 打印“\n”; 打印“\n”; } 打印qq
!; 打印“卡详细信息\n”; 打印qq 卡片上的姓名:
!; 打印qq!卡类型: 签证 万事达卡 美国运股票交易所 独奏
!; 打印qq!卡片上的号码:
; 打印qq!安全代码:
; 打印qq!有效期:
; 打印qq
!; 打印qq
\n
!; 打印结束html;
感谢您的脚本中的以下代码:

my $Tdate = param("Tdate");
$Tdate =~ s/(.{2})(.{2})(.{4})/\3\2\1/;
将转向:

18/04/2015
进入:

这可能不是您想要的,MySQL确实应该直接拒绝,但它将其存储为空日期

你可能想要这样的东西:

$Tdate =~ s{^(\d{2})/(\d{2})/(\d{4})$}{$3-$2-$1};
如果用户提供的日期格式与您期望的格式完全一致,则该选项将起作用。您确实应该添加一些验证逻辑,以确认提交的日期是有效的格式,并且具有日期、月份和年份的有效值。考虑使用类似或.< /P>的模块。

在Web页面中,您也可以考虑使用类似的东西。

< P>在尝试从CSV解析数据并使用Perl插入PergReSQL SQL时,我也遇到了同样的问题。我加入了这段代码,这一切都对我有用

my$date='2019年1月31日';
$date=~m/^(\d{2})\/(\d{2})\/(\d{4})$/;
my$fdate=“$3-$2-$1”;
打印$fdate。“\n”

这艘班轮也能完成任务

$date='2019年1月31日';
$date=~s/(^\d{2})\/(\d{2})\/(\d{4}$)/$3-$2-$1/


希望这会有所帮助。

你真的打算用这些乱七八糟的代码从客户那里获取真实的信用卡数据吗?!请不要这样做!CGI.pm有点过时了,至少真的很旧了。如果您需要自己完成,请查看
DBIx::Class
和一个现代Web框架,如Dancer2 Order Catalyst。甚至可能坚持使用现成的商店软件。当使用CGI.pm和纯SQL将表单输入传递到DB时,代码中会出现严重的安全问题!您已经收到警告。感谢您的关注,这是一个大学项目,不必包括付款方式,它只是为了展示,即使它只是一个大学项目,您也应该正确地做,并学习现代perl<代码>使用严格
使用警告。。。已准备好带有占位符的SQL语句。。。您当前的代码存在许多问题。
18/04/2015
4/20/01815
$Tdate =~ s{^(\d{2})/(\d{2})/(\d{4})$}{$3-$2-$1};