📄 order_control.cgi
字号:
#!/usr/bin/perl
#
#
##########################################################
# 网络小厨房 商店系统
# Net Kitchen SHOP
##########################################################
#首页代码
##########################################################
####################################################################################
#前端预处理
####################################################################################
use FindBin qw($Bin);
use lib "$Bin/library";
use iLcatlib;
use strict;
use vars qw(%FORM %CON %COOKIE $LIB $sth $row @userdata);
#获得系统参数
tie %CON, 'IniFiles', ( -file => "$Bin/nkshop.ini" );
#构造新对象
$LIB=iLcatlib->new(ttmlpath=>"$CON{path}{ttmlpath}");
#获得COOKIE
%COOKIE=$LIB->ReadCookie();
#获得提交内容
%FORM=$LIB->ReadParse();
#连接数据库
$LIB->MySQL_Connect(
database=>"$CON{database}{database}",
dbhost=>"$CON{database}{dbhost}",
dbuser=>"$CON{database}{dbuser}",
dbpwd=>"$CON{database}{dbpwd}"
);
#用户检测
@userdata=$LIB->key_proc("$COOKIE{'key'}","$CON{parameter}{timeout}");
if ($FORM{'act'} eq "check_page") {&check_page;}#定单查询功能
elsif ($FORM{'act'} eq "order_list") {&order_list;}#所有定单查询结构
elsif ($FORM{'act'} eq "disp_orderform") {&disp_orderform;}#独立定单检索(包括修改内容功能)
elsif ($FORM{'act'} eq "do_rm_orderform") {&do_rm_orderform;}#定单删除
elsif ($FORM{'act'} eq "do_change_orderform") {&do_change_orderform;}#修改定单
else {&check_page;}
sub check_page
{
print $LIB->Parse("check_page.htm",{
imgurl => $CON{path}{webimg},
cgiurl => $CON{path}{cgiurl},
uid => $FORM{'uid'},
msg => $FORM{'msg'},
});
#MySQL Disconnect And The END
$LIB->MySQL_Disconnect();$LIB->exit();
}
sub order_list
{
my (@view,%dbs);
my ($text,$shopped_req,$shopped_row);
$LIB->Error("请填写用户名") if ($FORM{'uid'} eq "");
#用户验证
$sth=$LIB->MySQL_Query("select passwd from userdata where id = '$FORM{'uid'}'");
$row = $sth->fetchrow_arrayref();
if (($LIB->crypt("$FORM{'pwd'}")) ne $row->[0]) {$LIB->Error("用户密码错误");}
#########################################
#取出此用户定单
my $loop_order_list=0;
my $shopped_list;
$sth=$LIB->MySQL_Query("select num,cretime,all_price,gather,gather_desc,send,send_desc from choosed where choosed_name = '$FORM{'uid'}' order by cretime desc");
while ($row = $sth->fetchrow_arrayref()) {
if ($row->[3] eq '1') {$row->[3]="已付";}
else {$row->[3]="未付";}
if ($row->[5] eq '0') {$row->[5]="未发货";}
elsif ($row->[5] eq '1') {$row->[5]="已发货";}
elsif ($row->[5] eq '2') {$row->[5]="有缺货";}
elsif ($row->[5] eq '3') {$row->[5]="汇单不明";}
$shopped_list=undef;
$shopped_req=$LIB->MySQL_Query("select pro_name,spec_desc,pro_count from choosed_pro where come_chose='$row->[0]'");
while ($shopped_row = $shopped_req->fetchrow_arrayref()) {
$shopped_row->[1] = '' if ($shopped_row->[1] eq 'NULL');
$shopped_list .="<option>$shopped_row->[0]:$shopped_row->[1]:$shopped_row->[2]</option>\n";
}
$dbs{'order_list'}{"$loop_order_list"}={
choosed_num => $row->[0],
cretime => $row->[1],
all_price => $row->[2],
pay_type => $row->[3],
rec_type => $row->[5],
shopped_list => $shopped_list,
link_url => "$CON{path}{cgiurl}/order_control.cgi?act=disp_orderform&choosed_num=$row->[0]&uid=$FORM{'uid'}",
};
$loop_order_list++;
}
$text={
imgurl => $CON{path}{webimg},
cgiurl => $CON{path}{cgiurl},
loop_order_list => $loop_order_list-1,
company_address => $CON{syscon}{company_address},
company_postcode => $CON{syscon}{company_postcode},
company_recuser => $CON{syscon}{company_recuser},
choosed_num => '您定单的编号',
};
print $LIB->Parse("order_list.htm",$text,%dbs);
#MySQL Disconnect And The END
$LIB->MySQL_Disconnect();$LIB->exit();
}
sub disp_orderform
{
my ($text,$cretime,$gather,$send,$pay_type,$rec_type,$rec_name,$rec_address,$rec_postcode,$rec_contact,$rec_email,$remark,$all_price);
my (%dbs);
$LIB->Error("请填写用户名") if ($FORM{'uid'} eq "");
#检测定单是否存在
$sth=$LIB->MySQL_Query("select cretime,gather,gather_desc,send,send_desc,pay_type,pay_channel,rec_type,rec_type_desc,rec_name,rec_address,rec_postcode,rec_contact,rec_email,remark,all_price from choosed where num = '$FORM{'choosed_num'}' and choosed_name = '$FORM{'uid'}'");
$row = $sth->fetchrow_arrayref();
if ($row->[0] eq '') {$LIB->Error("定单不存在");}
$cretime =$row->[0];
$gather =$row->[1];
$send =$row->[3];
$pay_type =$row->[5];
$rec_type =$row->[7];
$rec_name =$row->[9];
$rec_address =$row->[10];
$rec_postcode =$row->[11];
$rec_contact =$row->[12];
$rec_email =$row->[13];
$remark =$row->[14];
$all_price =$row->[15];
#########################################
#取出此定单商品
my $loop_shopped_list=0;
my $end_price;
$sth=$LIB->MySQL_Query("select pro_pid,pro_name,pro_count,spec_desc,spec,pro_price from choosed_pro where come_chose = '$FORM{'choosed_num'}'");
while ($row = $sth->fetchrow_arrayref()) {
$end_price=($row->[5]+$row->[4])*$row->[2];
$dbs{'shopped_list'}{"$loop_shopped_list"}={
pro_pid => $row->[0],
pro_name => $row->[1],
pro_count => $row->[2],
spec_desc => $row->[3],
spec => $row->[4],
end_price => $end_price,
};
$loop_shopped_list++;
}
$text={
choosed_num=> $FORM{'choosed_num'},
cretime => $cretime,
gather => $gather,
send => $send,
pay_type=> $CON{parameter}{"pay_type$pay_type"},
rec_type=> $CON{parameter}{"rec_type$rec_type"},
rec_name=> $rec_name,
rec_address=> $rec_address,
rec_postcode=> $rec_postcode,
rec_contact=> $rec_contact,
rec_email=> $rec_email,
remark => $remark,
all_price=> $all_price,
cgiurl => $CON{path}{cgiurl},
imgurl => $CON{path}{webimg},
uid => $FORM{'uid'},
loop_shopped_list=>$loop_shopped_list-1,
};
print $LIB->Parse("disp_orderform.htm",$text,%dbs);
#MySQL Disconnect And The END
$LIB->MySQL_Disconnect();$LIB->exit();
}
sub do_rm_orderform
{
my ($text);
$LIB->Error("请填写用户名") if ($FORM{'uid'} eq "");
#用户验证
$sth=$LIB->MySQL_Query("select passwd from userdata where id = '$FORM{'uid'}'");
$row = $sth->fetchrow_arrayref();
if (($LIB->crypt("$FORM{'pwd'}")) ne $row->[0]) {$LIB->Error("用户密码错误");}
#判断欲删除是否此用户
$sth=$LIB->MySQL_Query("select num from choosed where num = '$FORM{'choosed_num'}' and choosed_name = '$FORM{'uid'}'");
$row = $sth->fetchrow_arrayref();
if ($row->[0] eq '') {$LIB->Error("您无此定单");}
$LIB->MySQL_Do("DELETE FROM choosed WHERE num='$FORM{'choosed_num'}' and choosed_name = '$FORM{'uid'}'");
$LIB->MySQL_Do("DELETE FROM choosed_pro WHERE come_chose='$FORM{'choosed_num'}'");
$LIB->Location("$CON{path}{cgiurl}/order_control.cgi?uid=$FORM{'uid'}&msg=删除成功,请再登陆查看");
#MySQL Disconnect And The END
$LIB->MySQL_Disconnect();$LIB->exit();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -