概述
ticket(电子票) 应用于电影院
1.
languages/zh_cn/admin/common.php文件,添加语言
//菜单—添加
$_LANG['18_ticket_manage'] = '电子票管理';
//电子票管理
$_LANG['01_ticket_list'] = '电子票列表';
$_LANG['02_ticket_add'] = '添加电子票';
2.
$modules['18_ticket_manage']['01_ticket_list'] = 'ticket.php?act=list';
$modules['18_ticket_manage']['02_ticket_add'] = 'ticket.php?act=add';
这样我们就在后台写上了 "电子票"的按钮
3.在uploaddata创建ticket_pic文件夹,图片上传路径
4. 建立ecs_ticket表 与 ecs_ticket_cart
5.添加电子票的列表(uploadadmintemplatesticket_add.htm)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>SHOP 管理中心 - 品牌管理 </title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="styles/general.css" rel="stylesheet" type="text/css" />
<link href="styles/main.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../js/calendar.php?lang={$cfg_lang}"></script>
<link href="../js/calendar/calendar.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>
<span class="action-span"><a href="ticket.php?act=list">电子票列表</a></span>
<span class="action-span1"><a href="index.php?act=main">SHOP 管理中心</a> </span><span id="search_id" class="action-span1"> - 添加电子票 </span>
<div style="clear:both"></div>
</h1>
<div class="main-div">
<form method="post" action="ticket.php" name="theForm" enctype="multipart/form-data" οnsubmit="return validate()">
<table cellspacing="1" cellpadding="3" width="100%">
<tbody><tr>
<td class="label">电影名称</td>
<td><input type="text" name="film_name" maxlength="60" value=""><span class="require-field">*</span></td>
</tr>
<tr>
<td class="label"><a href="javascript:showNotice('warn_brandlogo');" title="点击此处查看提示信息">
<img src="images/notice.gif" width="16" height="16" border="0" alt="点击此处查看提示信息"></a>电影海报</td>
<td><input type="file" name="film_pic" id="logo" size="45"> <br><span class="notice-span" style="display:block" id="warn_brandlogo">
请上传图片,做为影片宣传海报! </span>
</td>
</tr>
<tr>
<td class="label">开场时间</td>
<td><input name="start_time" type="text" id="start_time" value="{$auction.start_time}" readonly="readonly" />
<input name="selbtn1" type="button" id="selbtn1" οnclick="return showCalendar('start_time', '%Y-%m-%d %H:%M', '24', false, 'selbtn1');" value="{$lang.btn_select}" class="button" />
</td>
</tr>
<tr>
<td class="label">禁止入场时间</td>
<td><input name="end_time" type="text" id="end_time" value="{$auction.end_time}" readonly="readonly" />
<input name="selbtn2" type="button" id="selbtn2" οnclick="return showCalendar('end_time', '%Y-%m-%d %H:%M', '24', false, 'selbtn2');" value="{$lang.btn_select}" class="button" />
</td>
</tr>
<tr>
<td class="label">座位数量</td>
<td><input type="text" name="ticket_num" maxlength="40" size="15" value="50"></td>
</tr>
<tr>
<td class="label">票价</td>
<td><input type="text" name="ticket_price" maxlength="40" size="15" value="50"></td>
</tr>
<tr>
<td class="label">影片描述</td>
<td><textarea name="film_desc" cols="60" rows="4"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><br>
<input type="submit" class="button" value=" 确定 ">
<input type="reset" class="button" value=" 重置 ">
<input type="hidden" name="act" value="{$form_action}">
</td>
</tr>
</tbody></table>
</form>
</div>
</body>
</html>
6.创建uploadadminticket.php
<?php
/**
* ECSHOP 管理中心电子票管理
* ============================================================================
* * 版权所有 2005-2012 上海商派网络科技有限公司,并保留所有权利。
* 网站地址: http://www.ecshop.com;
* ----------------------------------------------------------------------------
* 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
* 使用;不允许对程序代码以任何形式任何目的的再发布。
* ============================================================================
* $Author: liubo $
* $Id: brand.php 17217 2011-01-19 06:29:08Z liubo $
*/
define('IN_ECS', true);
require(dirname(__FILE__) . '/includes/init.php');
include_once(ROOT_PATH . 'includes/cls_image.php');
$image = new cls_image($_CFG['bgcolor']);
$exc = new exchange($ecs->table("ticket"), $db, 'ticket_id', 'file_name');
/*------------------------------------------------------ */
//-- 电子票列表
/*------------------------------------------------------ */
if ($_REQUEST['act'] == 'list')
{
$smarty->assign('ur_here', '电子票列表');
$smarty->assign('action_link', array('text' =>$_LANG['02_ticket_add'] , 'href' => 'ticket.php?act=add'));
$smarty->assign('full_page', 1);
//查询电子票信息(改动的部分)
$sql = "select * from ". $GLOBALS['ecs']->table('ticket');
$res = $GLOBALS['db']->query($sql); //$res资源类型
$list = array();
while($row = $GLOBALS['db']->fetchRow($res))
{
$row['run_time'] = local_date('Y-m-d H:i',$row['run_time']);
$row['ban_time'] = local_date('Y-m-d H:i',$row['ban_time']);
$list[] = $row;
}
$smarty->assign('ticket_list',$list);
assign_query_info();
$smarty->display('ticket_list.htm');
}
/*------------------------------------------------------ */
//-- 添加电子票
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'add')
{
/* 权限判断 */
admin_priv('goods_manage');
$smarty->assign('ur_here', '电子票添加');
$smarty->assign('action_link', array('text' => $_LANG['01_ticket_list'], 'href' => 'ticket.php?act=list'));
$smarty->assign('form_action', 'insert');
$smarty->display('ticket_add.htm');
}
elseif ($_REQUEST['act'] == 'insert')
{
/*检查电影名称是否重复*/
admin_priv('ticket_manage');
$is_only = $exc->is_only('film_name', $_POST['film_name']);
if (!$is_only)
{
sys_msg(sprintf('已存在', stripslashes($_POST['film_name'])), 1);
}
//时间处理
$run_time = local_strtotime($_POST['start_time']);
$ban_time = local_strtotime($_POST['end_time']);
/*处理图片*/
$img_name = basename($image->upload_image($_FILES['film_pic'],'ticket_pic'));
/*插入数据*/
$sql = "INSERT INTO ".$ecs->table('ticket')."(film_name, film_pic, run_time, ban_time,ticket_num,ticket_price,film_desc) ".
"VALUES ('$_POST[film_name]', '$img_name', '$run_time', '$ban_time', '$_POST[ticket_num]', '$_POST[ticket_price]', '$_POST[film_desc]')";
$db->query($sql);
admin_log($_POST['film_name'],'add','ticket');
/* 清除缓存 */
clear_cache_files();
$link[0]['text'] ='继续添加';
$link[0]['href'] = 'ticket.php?act=add';
$link[1]['text'] = '返回列表';
$link[1]['href'] = 'ticket.php?act=list';
sys_msg('添加成功', 0, $link);
}
/*------------------------------------------------------ */
//-- 编辑品牌
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'edit')
{
/* 权限判断 */
admin_priv('brand_manage');
$sql = "SELECT brand_id, brand_name, site_url, brand_logo, brand_desc, brand_logo, is_show, sort_order ".
"FROM " .$ecs->table('brand'). " WHERE brand_id='$_REQUEST[id]'";
$brand = $db->GetRow($sql);
$smarty->assign('ur_here', $_LANG['brand_edit']);
$smarty->assign('action_link', array('text' => $_LANG['06_goods_brand_list'], 'href' => 'brand.php?act=list&' . list_link_postfix()));
$smarty->assign('brand', $brand);
$smarty->assign('form_action', 'updata');
assign_query_info();
$smarty->display('brand_info.htm');
}
elseif ($_REQUEST['act'] == 'updata')
{
admin_priv('brand_manage');
if ($_POST['brand_name'] != $_POST['old_brandname'])
{
/*检查品牌名是否相同*/
$is_only = $exc->is_only('brand_name', $_POST['brand_name'], $_POST['id']);
if (!$is_only)
{
sys_msg(sprintf($_LANG['brandname_exist'], stripslashes($_POST['brand_name'])), 1);
}
}
/*对描述处理*/
if (!empty($_POST['brand_desc']))
{
$_POST['brand_desc'] = $_POST['brand_desc'];
}
$is_show = isset($_REQUEST['is_show']) ? intval($_REQUEST['is_show']) : 0;
/*处理URL*/
$site_url = sanitize_url( $_POST['site_url'] );
/* 处理图片 */
$img_name = basename($image->upload_image($_FILES['brand_logo'],'brandlogo'));
$param = "brand_name = '$_POST[brand_name]', site_url='$site_url', brand_desc='$_POST[brand_desc]', is_show='$is_show', sort_order='$_POST[sort_order]' ";
if (!empty($img_name))
{
//有图片上传
$param .= " ,brand_logo = '$img_name' ";
}
if ($exc->edit($param, $_POST['id']))
{
/* 清除缓存 */
clear_cache_files();
admin_log($_POST['brand_name'], 'edit', 'brand');
$link[0]['text'] = $_LANG['back_list'];
$link[0]['href'] = 'brand.php?act=list&' . list_link_postfix();
$note = vsprintf($_LANG['brandedit_succed'], $_POST['brand_name']);
sys_msg($note, 0, $link);
}
else
{
die($db->error());
}
}
/*------------------------------------------------------ */
//-- 编辑品牌名称
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'edit_brand_name')
{
check_authz_json('brand_manage');
$id = intval($_POST['id']);
$name = json_str_iconv(trim($_POST['val']));
/* 检查名称是否重复 */
if ($exc->num("brand_name",$name, $id) != 0)
{
make_json_error(sprintf($_LANG['brandname_exist'], $name));
}
else
{
if ($exc->edit("brand_name = '$name'", $id))
{
admin_log($name,'edit','brand');
make_json_result(stripslashes($name));
}
else
{
make_json_result(sprintf($_LANG['brandedit_fail'], $name));
}
}
}
elseif($_REQUEST['act'] == 'add_brand')
{
$brand = empty($_REQUEST['brand']) ? '' : json_str_iconv(trim($_REQUEST['brand']));
if(brand_exists($brand))
{
make_json_error($_LANG['brand_name_exist']);
}
else
{
$sql = "INSERT INTO " . $ecs->table('brand') . "(brand_name)" .
"VALUES ( '$brand')";
$db->query($sql);
$brand_id = $db->insert_id();
$arr = array("id"=>$brand_id, "brand"=>$brand);
make_json_result($arr);
}
}
/*------------------------------------------------------ */
//-- 编辑排序序号
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'edit_sort_order')
{
check_authz_json('brand_manage');
$id = intval($_POST['id']);
$order = intval($_POST['val']);
$name = $exc->get_name($id);
if ($exc->edit("sort_order = '$order'", $id))
{
admin_log(addslashes($name),'edit','brand');
make_json_result($order);
}
else
{
make_json_error(sprintf($_LANG['brandedit_fail'], $name));
}
}
/*------------------------------------------------------ */
//-- 切换是否显示
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'toggle_show')
{
check_authz_json('brand_manage');
$id = intval($_POST['id']);
$val = intval($_POST['val']);
$exc->edit("is_show='$val'", $id);
make_json_result($val);
}
/*------------------------------------------------------ */
//-- 删除品牌
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'remove')
{
check_authz_json('brand_manage');
$id = intval($_GET['id']);
/* 删除该品牌的图标 */
$sql = "SELECT brand_logo FROM " .$ecs->table('brand'). " WHERE brand_id = '$id'";
$logo_name = $db->getOne($sql);
if (!empty($logo_name))
{
@unlink(ROOT_PATH . DATA_DIR . '/brandlogo/' .$logo_name);
}
$exc->drop($id);
/* 更新商品的品牌编号 */
$sql = "UPDATE " .$ecs->table('goods'). " SET brand_id=0 WHERE brand_id='$id'";
$db->query($sql);
$url = 'brand.php?act=query&' . str_replace('act=remove', '', $_SERVER['QUERY_STRING']);
ecs_header("Location: $urln");
exit;
}
/*------------------------------------------------------ */
//-- 删除品牌图片
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'drop_logo')
{
/* 权限判断 */
admin_priv('brand_manage');
$brand_id = isset($_GET['id']) ? intval($_GET['id']) : 0;
/* 取得logo名称 */
$sql = "SELECT brand_logo FROM " .$ecs->table('brand'). " WHERE brand_id = '$brand_id'";
$logo_name = $db->getOne($sql);
if (!empty($logo_name))
{
@unlink(ROOT_PATH . DATA_DIR . '/brandlogo/' .$logo_name);
$sql = "UPDATE " .$ecs->table('brand'). " SET brand_logo = '' WHERE brand_id = '$brand_id'";
$db->query($sql);
}
$link= array(array('text' => $_LANG['brand_edit_lnk'], 'href' => 'brand.php?act=edit&id=' . $brand_id), array('text' => $_LANG['brand_list_lnk'], 'href' => 'brand.php?act=list'));
sys_msg($_LANG['drop_brand_logo_success'], 0, $link);
}
/*------------------------------------------------------ */
//-- 排序、分页、查询
/*------------------------------------------------------ */
elseif ($_REQUEST['act'] == 'query')
{
$brand_list = get_brandlist();
$smarty->assign('brand_list', $brand_list['brand']);
$smarty->assign('filter', $brand_list['filter']);
$smarty->assign('record_count', $brand_list['record_count']);
$smarty->assign('page_count', $brand_list['page_count']);
make_json_result($smarty->fetch('brand_list.htm'), '',
array('filter' => $brand_list['filter'], 'page_count' => $brand_list['page_count']));
}
/**
* 获取品牌列表
*
* @access public
* @return array
*/
function get_brandlist()
{
$result = get_filter();
if ($result === false)
{
/* 分页大小 */
$filter = array();
/* 记录总数以及页数 */
if (isset($_POST['brand_name']))
{
$sql = "SELECT COUNT(*) FROM ".$GLOBALS['ecs']->table('brand') .' WHERE brand_name = ''.$_POST['brand_name'].''';
}
else
{
$sql = "SELECT COUNT(*) FROM ".$GLOBALS['ecs']->table('brand');
}
$filter['record_count'] = $GLOBALS['db']->getOne($sql);
$filter = page_and_size($filter);
/* 查询记录 */
if (isset($_POST['brand_name']))
{
if(strtoupper(EC_CHARSET) == 'GBK')
{
$keyword = iconv("UTF-8", "gb2312", $_POST['brand_name']);
}
else
{
$keyword = $_POST['brand_name'];
}
$sql = "SELECT * FROM ".$GLOBALS['ecs']->table('brand')." WHERE brand_name like '%{$keyword}%' ORDER BY sort_order ASC";
}
else
{
$sql = "SELECT * FROM ".$GLOBALS['ecs']->table('brand')." ORDER BY sort_order ASC";
}
set_filter($filter, $sql);
}
else
{
$sql = $result['sql'];
$filter = $result['filter'];
}
$res = $GLOBALS['db']->selectLimit($sql, $filter['page_size'], $filter['start']);
$arr = array();
while ($rows = $GLOBALS['db']->fetchRow($res))
{
$brand_logo = empty($rows['brand_logo']) ? '' :
'<a href="../' . DATA_DIR . '/brandlogo/'.$rows['brand_logo'].'" target="_brank"><img src="images/picflag.gif" width="16" height="16" border="0" alt='.$GLOBALS['_LANG']['brand_logo'].' /></a>';
$site_url = empty($rows['site_url']) ? 'N/A' : '<a href="'.$rows['site_url'].'" target="_brank">'.$rows['site_url'].'</a>';
$rows['brand_logo'] = $brand_logo;
$rows['site_url'] = $site_url;
$arr[] = $rows;
}
return array('brand' => $arr, 'filter' => $filter, 'page_count' => $filter['page_count'], 'record_count' => $filter['record_count']);
}
?>
7.创建 uploadadmintemplatesticket_list.htm
<!-- $Id: brand_list.htm 15898 2009-05-04 07:25:41Z liuhui $ -->
{if $full_page}
{include file="pageheader.htm"}
{insert_scripts files="../js/utils.js,listtable.js"}
<!-- 品牌搜索 -->
{include file="brand_search.htm"}
<form method="post" action="" name="listForm">
<!-- start brand list -->
<div class="list-div" id="listDiv">
{/if}
<table cellpadding="3" cellspacing="1">
<tr>
<th>电影名称</th>
<th>开场时间</th>
<th>禁止时间</th>
<th>总票数</th>
<th>票价</th>
<th>操作</th>
</tr>
{foreach from=$ticket_list item=ticket}
<tr>
<td class="first-cell">
<span>{$ticket.film_name}</span>
<span οnclick="javascript:listTable.edit(this, 'edit_brand_name', {$brand.brand_id})">{$brand.brand_name|escape:html}</span>
</td>
<td align="center">{$ticket.run_time}</td>
<td align="center">{$ticket.ban_time}</td>
<td align="center"><span οnclick="javascript:listTable.edit(this, 'edit_sort_order', {$brand.brand_id})">{$ticket.ticket_num}</span></td>
<td align="center">{$ticket.ticket_price}</td>
<td align="center">
<a href="brand.php?act=edit&id={$brand.brand_id}" title="{$lang.edit}">编辑</a> |
<a href="javascript:;" οnclick="listTable.remove({$brand.brand_id}, '{$lang.drop_confirm}')" title="{$lang.edit}">删除</a>
</td>
</tr>
{/foreach}
<tr>
<td align="right" nowrap="true" colspan="6">
{include file="page.htm"}
</td>
</tr>
</table>
{if $full_page}
<!-- end brand list -->
</div>
</form>
<script type="text/javascript" language="javascript">
<!--
listTable.recordCount = {$record_count};
listTable.pageCount = {$page_count};
{foreach from=$filter item=item key=key}
listTable.filter.{$key} = '{$item}';
{/foreach}
{literal}
onload = function()
{
// 开始检查订单
startCheckOrder();
}
{/literal}
//-->
</script>
{include file="pagefooter.htm"}
{/if}
这样我们后台的功能就完成了 那我们看前台的
1.打开后台---系统设置—自定义导航栏--添加导航
2.在seat文件夹中找到
3.在uploadthemesdefaultticket_info.dwt
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="Keywords" content="{$keywords}" />
<meta name="Description" content="{$description}" />
<style type="text/css">
.demo{width:700px; margin:40px auto 0 auto; min-height:450px;}
@media screen and (max-width: 360px) {.demo {width:340px}}
ul,li{
list-style:none;
}
.front{width: 300px;margin: 5px 32px 45px 32px;background-color: #f0f0f0; color: #666;text-align: center;padding: 3px;border-radius: 5px;}
.booking-details {float: right;position: relative;width:200px;height: 400px; }
.booking-details h3 {margin: 5px 5px 0 0;font-size: 16px;}
.booking-details p{line-height:26px; font-size:16px; color:#999;width:300px;}
.booking-details p span{color:#666}
div.seatCharts-cell {color: #182C4E;height: 25px;width: 25px;line-height: 25px;margin: 3px;float: left;text-align: center;outline: none;font-size: 13px;}
div.seatCharts-seat {color: #fff;cursor: pointer;-webkit-border-radius: 5px;-moz-border-radius: 5px;border-radius: 5px;}
div.seatCharts-row {height: 35px;}
div.seatCharts-seat.available {background-color: #B9DEA0;}
div.seatCharts-seat.focused {background-color: #76B474;border: none;}
div.seatCharts-seat.selected {background-color: #E6CAC4;}
div.seatCharts-seat.unavailable {background-color: #472B34;cursor: not-allowed;}
div.seatCharts-container {border-right: 1px dotted #adadad;width: 400px;padding: 20px;float: left;}
div.seatCharts-legend {padding-left: 0px;position: absolute;bottom: 16px;}
ul.seatCharts-legendList {padding-left: 0px;}
.seatCharts-legendItem{float:left; width:90px;margin-top: 10px;line-height: 2;}
span.seatCharts-legendDescription {margin-left: 5px;line-height: 30px;}
.checkout-button {display: block;width:80px; height:24px; line-height:20px;margin: 10px auto;border:1px solid #999;font-size: 14px; cursor:pointer}
#selected-seats {max-height: 200px;overflow-y: auto;overflow-x: none;width: 200px;}
#selected-seats li{float:left; width:72px; height:26px; line-height:26px; border:1px solid #d3d3d3; background:#f7f7f7; margin:6px; font-size:14px; font-weight:bold; text-align:center}
.checkout{
float:right;
}
</style>
<!-- TemplateBeginEditable name="doctitle" -->
<title>{$page_title}</title>
<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable -->
<style>
.p_t{
margin-top:10px;
}
b{
width:100px;
}
a.info{
text-decoration:none;
display:inline-block;
width:75px;
line-height:25px;
border:1px #CCC solid;
text-align:center;
}
</style>
<link rel="shortcut icon" href="favicon.ico" />
<link rel="icon" href="animated_favicon.gif" type="image/gif" />
<link href="{$ecs_css_path}" rel="stylesheet" type="text/css" />
</head>
<body>
<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->
<!--当前位置 start-->
<div class="block box">
<div id="ur_here">
<!-- #BeginLibraryItem "/library/ur_here.lbi" --><!-- #EndLibraryItem -->
</div>
</div>
<!--当前位置 end-->
<div class="blank"></div>
<!-- 电子票 详情 start-->
<div class="block box">
<div class="box">
<div class="box_1">
<h3><span>{$lang.ticket_info}</span></h3>
<div class="boxCenterList">
<table width="100%" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff" width="200">
<div style="width:300px;text-align: center;">
<img src="data/ticket_pic/{$ticket.film_pic}" width="200" />
</div>
</td>
<td bgcolor="#ffffff" valign="top" style="padding:20px;">
<h1 style="margin-top:10px;line-height:50px;" ><span id="film_name">{$ticket.film_name}</span></h1>
<div style="height:200px;">
<p class="p_t"><b>开始时间{$lang.film_start_c}:</b>{$ticket.run_time}2016-05-18</p>
<p class="p_t"><b>结束时间{$lang.film_end_c}:</b>{$ticket.ban_time}2016-05-18</p>
<p class="p_t"><b>演员{$lang.film_act_er}:</b>巴巴克·纳加非/杰拉德·巴特勒 / 摩根·弗里曼 / 安吉拉·贝塞特 / 艾伦·艾克哈特 / 拉妲·米契尔 / 杰基·厄尔·哈利 / 夏洛特·莱利 / 梅丽莎·里奥</p>
<p class="p_t"><b>{$lang.film_type_c}:</b>{$ticket.t_id}</p>
<p class="p_t"><b>{$lang.film_price_c}:</b><span id="ticket_price">{$ticket.ticket_price}</span>{$lang.film_unit}
<b>{$lang.film_remain}:</b>{$surplus_num}{$lang.film_spread}</p>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="blank5"></div>
<!-- 电影 start-->
<div class="box_1">
<h3 style="padding:0 5px;">
<div id="com_b" class="history clearfix">
<h2 class="h2bg">{$lang.film_check_seat}</h2> <!--- 选座 -->
</div>
</h3>
<!--- 电影选座str -->
<div id="com_h" style="display:;">
<div id="main">
<div class="demo">
<div id="seat-map">
<div class="front">{$lang.film_pm_1}</div>
</div>
<div class="booking-details">
<p>选择座位{$lang.film_check_seat}:</p>
<ul id="selected-seats"></ul>
<p>选择张数{$lang.film_checked_seat}:<span id="counter"></span></p>
<p>票价{$lang.film_all}:<b><span id="total">0</span></b>{$lang.film_unit}</p>
<div id="legend"></div>
</div>
<div style="text-align: center;">
<input type="button" οnclick="checkout({$ticket.ticket_id})" value="确定购买" style="border-radius:5px;width:200px;height:40px;background: #ff6600;border: none;">
</div>
<div style="clear:both;"></div>
</div>
</div>
</div>
</div>
<!-- 电影选作 end -->
</div>
<!--电子票 详情 end-->
<div class="blank5"></div>
<!--帮助-->
<div class="block">
<div class="box">
<div class="helpTitBg clearfix">
<!-- #BeginLibraryItem "/library/help.lbi" --><!-- #EndLibraryItem -->
</div>
</div>
</div>
<div class="blank"></div>
<!--帮助-->
<!--友情链接 start-->
<!--{if $img_links or $txt_links }-->
<div id="bottomNav" class="box">
<div class="box_1">
<div class="links clearfix">
<!--开始图片类型的友情链接{foreach from=$img_links item=link}-->
<a href="{$link.url}" target="_blank" title="{$link.name}"><img src="{$link.logo}" alt="{$link.name}" border="0" /></a>
<!--结束图片类型的友情链接{/foreach}-->
<!-- {if $txt_links} -->
<!--开始文字类型的友情链接{foreach from=$txt_links item=link}-->
[<a href="{$link.url}" target="_blank" title="{$link.name}">{$link.name}</a>]
<!--结束文字类型的友情链接{/foreach}-->
<!-- {/if} -->
</div>
</div>
</div>
<!--{/if}-->
<!--友情链接 end-->
<div class="blank"></div>
<!-- #BeginLibraryItem "/library/page_footer.lbi" --><!-- #EndLibraryItem -->
{insert_scripts files='js/seat/jquery-1.8.3.min.js,seat/jquery.seat-charts.min.js'}
<script type="text/javascript">
$(function() {
window.__Object_toJSONString = Object.prototype.toJSONString;
delete Object.prototype.toJSONString;
});
</script>
<script type="text/javascript">
var price = {$ticket.ticket_price}; //票价
// alert(price)
$(document).ready(function() {
var $cart = $('#selected-seats'); //座位区
$counter = $('#counter'); //票数
$total = $('#total'); //总计金额
var sc = $('#seat-map').seatCharts({
map: [ //座位图
'aaaaaaaaaa',
'aaaaaaaaaa',
'__________',
'aaaaaaaa__',
'aaaaaaaaaa',
'aaaaaaaaaa',
'aaaaaaaaaa',
'aaaaaaaaaa',
'aaaaaaaaaa',
'aa__aa__aa'
],
naming : {
top : false,
getLabel : function (character, row, column) {
return column;
}
},
legend : { //定义图例
node : $('#legend'),
items : [
[ 'a', 'available', '可选座' ],
[ 'a', 'unavailable', '已售出']
]
},
click: function () { //点击事件
//seat_id = this.settings.id;
if (this.status() == 'available') { //可选座
$('<li>'+(this.settings.row+1)+'排'+this.settings.label+'座</li>').attr('id', 'cart-item-'+this.settings.id).data('seatId', this.settings.id).appendTo($cart);
$counter.text(sc.find('selected').length+1); // 总票数
$total.text(recalculateTotal(sc)); // 总价格
return 'selected';
} else if (this.status() == 'selected') { //已选中
//更新数量
$counter.text(sc.find('selected').length-1);
//更新总计
$total.text(recalculateTotal(sc)-price-price);
//删除已预订座位
$('#cart-item-'+this.settings.id).remove();
//可选座
return 'available';
} else if (this.status() == 'unavailable') { //已售出
return 'unavailable';
} else {
return this.style();
}
}
});
//已售出的座位
sc.get({$ticket.unavailable}).status('unavailable');
});
//计算总金额
function recalculateTotal(sc) {
var total = 0;
sc.find('selected').each(function () {
total += price;
});
return total += price;
}
function checkout(goodsId, parentId)
{
var goods = new Object();
var spec_arr = $('#selected-seats').text(); // 座位
var fittings_arr = new Array();
var number = $('#counter').html(); // 所选票数
//var formBuy = document.forms['ECS_FORMBUY'];
var quick = 0;
//alert(spec_arr);return false;
goods.quick = quick;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number = number;
goods.parent = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=ticket', 'goods=' + JSON.stringify(goods), addToCartResponse, 'POST', 'JSON');
}
/* *
* 处理添加商品到购物车的反馈信息
*/
function addToCartResponse(result)
{
if(result.error == 1)
{
alert(result.message);
location.href = 'flow.php?step=login';
}
else if(result.error == 2)
{
alert(result.message);
}
else if(result.error == 3)
{
alert(result.message);
location.href = 'flow.php?step=ticket_done';
}
else if(result.error == 4)
{
alert(result.message);
}
else if(result.error == 5)
{
alert(result.message);
}
console.log(result);return false;
}
</script>
</body>
</html>
4.uploadflow.php (以下内容添加if ($_REQUEST['step'] == 'add_to_cart')前ss)
/* 购买电子票 */
if ($_REQUEST['step'] == 'ticket')
{
include_once('includes/cls_json.php');
$json = new JSON;
$_POST['goods'] = strip_tags(urldecode($_POST['goods']));
$_POST['goods'] = json_str_iconv($_POST['goods']);
$goods = $json->decode($_POST['goods']);
//print_r($goods);die;
/*
* 检查用户是否已经登录
* 如果用户已经登录了则检查是否有默认的收货地址
* 如果没有登录则跳转到登录和注册页面
*/
if (empty($_SESSION['direct_shopping']) && $_SESSION['user_id'] == 0)
{
$result['error'] = 1;
$result['message'] = "请先登录";
die($json->encode($result));
}
/* 检查:商品数量是否合法 */
if (empty($goods->number))
{
$result['error'] = 2;
$result['message'] = '还没有选座';
echo $json->encode($result);die;
}
/* 检查:商品数量是否合法*/
if ($goods->number > 1)
{
$result['error'] = 5;
$result['message'] = '系统正在升级,只能选一张票';
echo $json->encode($result);die;
}
$spec = explode(',', trim(str_replace('座', '座,', $goods->spec), ',')); // 座位转换成数组格式
// 随机生成票号
$string = 'abcdefghkmnprstuvwxyzABCDEFGHKMNPRSTUVWXYZ23456789';
$uid = $_SESSION['user_id'];
for($j = 0; $j < count($spec); $j++){
$str = '';
for ($i=0; $i < 10; $i++) {
$str.= $string[rand(0,strlen($string)-1)];
}
$data[] = $uid.$str;
}
/* 取得商品信息 */
$ticket_info = "SELECT * FROM " .$GLOBALS['ecs']->table('ticket'). " WHERE ticket_id = '".$goods->goods_id ."'";
$ticket = $GLOBALS['db']->getRow($ticket_info);
//此处出现问题bug未解决
foreach($spec as $key => $val)
{
/* 初始化要插入购物车的基本件数据 */
$parent[] = array(
'user_id' => $_SESSION['user_id'],
'ticket_order' => $data[$key],
'ticket_id' => $goods->goods_id,
'film_name' => $ticket['film_name'],
'ticket_price' => $ticket['ticket_price'],
'seat' => $val
);
}
foreach($spec as $sp) // 查询其他人是否已购买
{
$seat = "SELECT seat FROM " .$GLOBALS['ecs']->table('ticket_cart'). " WHERE seat = '".$sp."' AND ticket_id = '" . $goods->goods_id ."'";
$one = $GLOBALS['db']->getOne($seat);
if($one)
{
$result['error'] = 4;
$result['message'] = '座位已被预定';
}
else
{
//购物车没有此物品,则插入
foreach($parent as $p)
{
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('ticket_cart'), $p, 'INSERT');
//print_r($p);die;
//购买过的票 入库 前台显示不可选择
$sql_select="select unavailable from ".$GLOBALS['ecs']->table('ticket')."where ticket_id='$p[ticket_id]'";
$str=$GLOBALS['db']->getOne($sql_select);
// $seat接过来的值 如果数据库为空则添加数据 否则 就拼接原数据+,+新数据
if(empty($str)){
$seat=$p['seat'];
}else{
$seat=$str.",".$p['seat'];
}
$sql_update="update".$GLOBALS['ecs']->table('ticket')."set unavailable='$seat' where ticket_id='$p[ticket_id]'";
$GLOBALS['db']->getAll($sql_update);
$result['error'] = 3;
$result['message'] = "购买成功";
}
}
}
echo $json->encode($result);die;
}
elseif($_REQUEST['step'] == 'ticket_done')
{
$sql = " select * from ". $GLOBALS['ecs']->table('ticket_cart'). " where user_id = ".$_SESSION['user_id'];
$carts = $GLOBALS['db']->getAll($sql);
$smarty->assign('carts', $carts);
$num = count($carts); // 总票数
$smarty->assign('num', $num);
$price = '';
foreach ($carts as $key => $val)
{
$price += $val['ticket_price'];
}
$smarty->assign('total_price', $price);
}
//电子票结束
5.
themesdefaultflow.dwt(生成订单列表)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="Keywords" content="{$keywords}" />
<meta name="Description" content="{$description}" />
<!-- TemplateBeginEditable name="doctitle" -->
<title>{$page_title}</title>
<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable -->
<link rel="shortcut icon" href="favicon.ico" />
<link rel="icon" href="animated_favicon.gif" type="image/gif" />
<link href="{$ecs_css_path}" rel="stylesheet" type="text/css" />
{* 包含脚本文件 *}
{insert_scripts files='common.js,shopping_flow.js'}
</head>
<body>
<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->
<!--当前位置 start-->
<div class="block box">
<div id="ur_here">
<!-- #BeginLibraryItem "/library/ur_here.lbi" --><!-- #EndLibraryItem -->
</div>
</div>
<!--当前位置 end-->
<div class="blank"></div>
<div class="block">
<!-- {if $step eq "cart"} -->
<!-- 购物车内容 -->
{* 包含脚本文件 *}
{insert_scripts files='showdiv.js'}
<script type="text/javascript">
{foreach from=$lang.password_js item=item key=key}
var {$key} = "{$item}";
{/foreach}
</script>
<div class="flowBox">
<h6><span>{$lang.goods_list}</span></h6>
<form id="formCart" name="formCart" method="post" action="flow.php">
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<th bgcolor="#ffffff">{$lang.goods_name}</th>
<!-- {if $show_goods_attribute eq 1} 显示商品属性 -->
<th bgcolor="#ffffff">{$lang.goods_attr}</th>
<!-- {/if} -->
<!-- {if $show_marketprice} 显示市场价 -->
<th bgcolor="#ffffff">{$lang.market_prices}</th>
<!-- {/if} -->
<th bgcolor="#ffffff">{$lang.shop_prices}</th>
<th bgcolor="#ffffff">{$lang.number}</th>
<th bgcolor="#ffffff">{$lang.subtotal}</th>
<th bgcolor="#ffffff">{$lang.handle}</th>
</tr>
<!-- {foreach from=$goods_list item=goods} -->
<tr>
<td bgcolor="#ffffff" align="center">
<!-- {if $goods.goods_id gt 0 && $goods.extension_code neq 'package_buy'} 商品 -->
<!-- {if $show_goods_thumb eq 1} -->
<a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a>
<!-- {elseif $show_goods_thumb eq 2} -->
<a href="goods.php?id={$goods.goods_id}" target="_blank"><img src="{$goods.goods_thumb}" border="0" title="{$goods.goods_name|escape:html}" /></a>
<!-- {else} -->
<a href="goods.php?id={$goods.goods_id}" target="_blank"><img src="{$goods.goods_thumb}" border="0" title="{$goods.goods_name|escape:html}" /></a><br />
<a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a>
<!-- {/if} -->
<!-- {if $goods.parent_id gt 0} 配件 -->
<span style="color:#FF0000">({$lang.accessories})</span>
<!-- {/if} -->
<!-- {if $goods.is_gift gt 0} 赠品 -->
<span style="color:#FF0000">({$lang.largess})</span>
<!-- {/if} -->
<!-- {elseif $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} -->
<a href="javascript:void(0)" οnclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a>
<div id="suit_{$goods.goods_id}" style="display:none">
<!-- {foreach from=$goods.package_goods_list item=package_goods_list} -->
<a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br />
<!-- {/foreach} -->
</div>
<!-- {else} 优惠活动 -->
{$goods.goods_name}
<!-- {/if} -->
</td>
<!-- {if $show_goods_attribute eq 1} 显示商品属性 -->
<td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td>
<!-- {/if} -->
<!-- {if $show_marketprice} 显示市场价 -->
<td align="right" bgcolor="#ffffff">{$goods.market_price}</td>
<!-- {/if} -->
<td align="right" bgcolor="#ffffff">{$goods.goods_price}</td>
<td align="right" bgcolor="#ffffff">
<!-- {if $goods.goods_id gt 0 && $goods.is_gift eq 0 && $goods.parent_id eq 0} 普通商品可修改数量 -->
<input type="text" name="goods_number[{$goods.rec_id}]" id="goods_number_{$goods.rec_id}" value="{$goods.goods_number}" size="4" class="inputBg" style="text-align:center " οnkeydοwn="showdiv(this)"/>
<!-- {else} -->
{$goods.goods_number}
<!-- {/if} -->
</td>
<td align="right" bgcolor="#ffffff">{$goods.subtotal}</td>
<td align="center" bgcolor="#ffffff">
<a href="javascript:if (confirm('{$lang.drop_goods_confirm}')) location.href='flow.php?step=drop_goods&id={$goods.rec_id}'; " class="f6">{$lang.drop}</a>
<!-- {if $smarty.session.user_id gt 0 && $goods.extension_code neq 'package_buy'} 如果登录了,可以加入收藏 -->
<a href="javascript:if (confirm('{$lang.drop_goods_confirm}')) location.href='flow.php?step=drop_to_collect&id={$goods.rec_id}'; " class="f6">{$lang.drop_to_collect}</a>
<!-- {/if} --> </td>
</tr>
<!-- {/foreach} -->
</table>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff">
<!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} -->
{$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!-- {/if} -->
</td>
<td align="right" bgcolor="#ffffff">
<input type="button" value="{$lang.clear_cart}" class="bnt_blue_1" οnclick="location.href='flow.php?step=clear'" />
<input name="submit" type="submit" class="bnt_blue_1" value="{$lang.update_cart}" />
</td>
</tr>
</table>
<input type="hidden" name="step" value="update_cart" />
</form>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="0" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff"><a href="./"><img src="images/continue.gif" alt="continue" /></a></td>
<td bgcolor="#ffffff" align="right"><a href="flow.php?step=checkout"><img src="images/checkout.gif" alt="checkout" /></a></td>
</tr>
</table>
<!-- {if $smarty.session.user_id gt 0} -->
{insert_scripts files='transport_jquery.js'}
<script type="text/javascript" charset="utf-8">
function collect_to_flow(goodsId)
{
var goods = new Object();
var spec_arr = new Array();
var fittings_arr = new Array();
var number = 1;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number = number;
goods.parent = 0;
Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), collect_to_flow_response, 'POST', 'JSON');
}
function collect_to_flow_response(result)
{
if (result.error > 0)
{
// 如果需要缺货登记,跳转
if (result.error == 2)
{
if (confirm(result.message))
{
location.href = 'user.php?act=add_booking&id=' + result.goods_id;
}
}
else if (result.error == 6)
{
openSpeDiv(result.message, result.goods_id);
}
else
{
alert(result.message);
}
}
else
{
location.href = 'flow.php';
}
}
</script>
</div>
<div class="blank"></div>
<!-- {/if} -->
<!-- {if $collection_goods} -->
<div class="flowBox">
<h6><span>{$lang.label_collection}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<!-- {foreach from=$collection_goods item=goods} -->
<tr>
<td bgcolor="#ffffff"><a href="goods.php?id={$goods.goods_id}" class="f6">{$goods.goods_name}</a></td>
<td bgcolor="#ffffff" align="center" width="100"><a href="javascript:addToCart({$goods.goods_id})" class="f6">{$lang.collect_to_flow}</a></td>
</tr>
<!-- {/foreach} -->
</table>
<!-- {/if} -->
</div>
<div class="blank5"></div>
<!-- {/if} -->
<!-- {if $fittings_list} 商品配件 -->
{insert_scripts files='transport_jquery.js'}
<script type="text/javascript" charset="utf-8">
function fittings_to_flow(goodsId,parentId)
{
var goods = new Object();
var spec_arr = new Array();
var number = 1;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number = number;
goods.parent = parentId;
Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), fittings_to_flow_response, 'POST', 'JSON');
}
function fittings_to_flow_response(result)
{
if (result.error > 0)
{
// 如果需要缺货登记,跳转
if (result.error == 2)
{
if (confirm(result.message))
{
location.href = 'user.php?act=add_booking&id=' + result.goods_id;
}
}
else if (result.error == 6)
{
openSpeDiv(result.message, result.goods_id, result.parent);
}
else
{
alert(result.message);
}
}
else
{
location.href = 'flow.php';
}
}
</script>
<div class="block" >
<div class="flowBox">
<h6><span>{$lang.goods_fittings}</span></h6>
<form action="flow.php" method="post">
<div class="flowGoodsFittings clearfix">
<!-- {foreach from=$fittings_list item=fittings} -->
<ul class="clearfix">
<li class="goodsimg">
<a href="{$fittings.url}" target="_blank"><img src="{$fittings.goods_thumb}" alt="{$fittings.name|escape:html}" class="B_blue" /></a>
</li>
<li>
<a href="{$fittings.url}" target="_blank" title="{$fittings.goods_name|escape:html}" class="f6">{$fittings.short_name|escape:html}</a><br />
{$lang.fittings_price}<font class="f1">{$fittings.fittings_price}</font><br />
{$lang.parent_name}{$fittings.parent_short_name}<br />
<a href="javascript:fittings_to_flow({$fittings.goods_id},{$fittings.parent_id})"><img src="images/bnt_buy.gif" alt="{$lang.collect_to_flow}" /></a>
</li>
</ul>
<!-- {/foreach} 循环商品配件结束 -->
</div>
</form>
</div>
</div>
<div class="blank5"></div>
<!-- {/if} -->
<!-- {if $favourable_list} 优惠活动 -->
<div class="block">
<div class="flowBox">
<h6><span>{$lang.label_favourable}</span></h6>
<!-- {foreach from=$favourable_list item=favourable} -->
<form action="flow.php" method="post">
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td align="right" bgcolor="#ffffff">{$lang.favourable_name}</td>
<td bgcolor="#ffffff"><strong>{$favourable.act_name}</strong></td>
</tr>
<tr>
<td align="right" bgcolor="#ffffff">{$lang.favourable_period}</td>
<td bgcolor="#ffffff">{$favourable.start_time} --- {$favourable.end_time}</td>
</tr>
<tr>
<td align="right" bgcolor="#ffffff">{$lang.favourable_range}</td>
<td bgcolor="#ffffff">{$lang.far_ext[$favourable.act_range]}<br />
{$favourable.act_range_desc}</td>
</tr>
<tr>
<td align="right" bgcolor="#ffffff">{$lang.favourable_amount}</td>
<td bgcolor="#ffffff">{$favourable.formated_min_amount} --- {$favourable.formated_max_amount}</td>
</tr>
<tr>
<td align="right" bgcolor="#ffffff">{$lang.favourable_type}</td>
<td bgcolor="#ffffff">
<span class="STYLE1">{$favourable.act_type_desc}</span>
<!-- {if $favourable.act_type eq 0} -->
<!-- {foreach from=$favourable.gift item=gift} --><br />
<input type="checkbox" value="{$gift.id}" name="gift[]" />
<a href="goods.php?id={$gift.id}" target="_blank" class="f6">{$gift.name}</a> [{$gift.formated_price}]
<!-- {/foreach} -->
<!-- {/if} --> </td>
</tr>
<!-- {if $favourable.available} -->
<tr>
<td align="right" bgcolor="#ffffff"> </td>
<td align="center" bgcolor="#ffffff"><input type="image" src="images/bnt_cat.gif" alt="Add to cart" border="0" /></td>
</tr>
<!-- {/if} -->
</table>
<input type="hidden" name="act_id" value="{$favourable.act_id}" />
<input type="hidden" name="step" value="add_favourable" />
</form>
<!-- {/foreach} 循环赠品活动结束 -->
</div>
</div>
<!-- {/if} -->
<!-- {if $step eq "consignee"} -->
<!-- 开始收货人信息填写界面 -->
{insert_scripts files='region.js,utils.js'}
<script type="text/javascript">
region.isAdmin = false;
{foreach from=$lang.flow_js item=item key=key}
var {$key} = "{$item}";
{/foreach}
{literal}
onload = function() {
if (!document.all)
{
document.forms['theForm'].reset();
}
}
{/literal}
</script>
<!-- 如果有收货地址,循环显示用户的收获地址 -->
<!-- {foreach from=$consignee_list item=consignee key=sn} -->
<form action="flow.php" method="post" name="theForm" id="theForm" οnsubmit="return checkConsignee(this)">
<!-- #BeginLibraryItem "/Library/consignee.lbi" --><!-- #EndLibraryItem -->
</form>
<!-- {/foreach} -->
<!-- {/if} -->
<!-- {if $step eq "checkout"} 开始订单确认界面 -->
<form action="flow.php" method="post" name="theForm" id="theForm" οnsubmit="return checkOrderForm(this)">
<script type="text/javascript">
var flow_no_payment = "{$lang.flow_no_payment}";
var flow_no_shipping = "{$lang.flow_no_shipping}";
</script>
<div class="flowBox">
<h6><span>{$lang.goods_list}</span><!--{if $allow_edit_cart} --><a href="flow.php" class="f6">{$lang.modify}</a><!--{/if} --></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<th bgcolor="#ffffff">{$lang.goods_name}</th>
<th bgcolor="#ffffff">{$lang.goods_attr}</th>
<!-- {if $show_marketprice} -->
<th bgcolor="#ffffff">{$lang.market_prices}</th>
<!-- {/if} -->
<th bgcolor="#ffffff">{if $gb_deposit}{$lang.deposit}{else}{$lang.shop_prices}{/if}</th>
<th bgcolor="#ffffff">{$lang.number}</th>
<th bgcolor="#ffffff">{$lang.subtotal}</th>
</tr>
<!-- {foreach from=$goods_list item=goods} -->
<tr>
<td bgcolor="#ffffff">
<!-- {if $goods.goods_id gt 0 && $goods.extension_code eq 'package_buy'} -->
<a href="javascript:void(0)" οnclick="setSuitShow({$goods.goods_id})" class="f6">{$goods.goods_name}<span style="color:#FF0000;">({$lang.remark_package})</span></a>
<div id="suit_{$goods.goods_id}" style="display:none">
<!-- {foreach from=$goods.package_goods_list item=package_goods_list} -->
<a href="goods.php?id={$package_goods_list.goods_id}" target="_blank" class="f6">{$package_goods_list.goods_name}</a><br />
<!-- {/foreach} -->
</div>
<!-- { else } -->
<a href="goods.php?id={$goods.goods_id}" target="_blank" class="f6">{$goods.goods_name}</a>
<!-- {if $goods.parent_id > 0} -->
<span style="color:#FF0000">({$lang.accessories})</span>
<!-- {elseif $goods.is_gift} -->
<span style="color:#FF0000">({$lang.largess})</span>
<!-- {/if} -->
<!-- {/if} -->
<!-- {if $goods.is_shipping} -->(<span style="color:#FF0000">{$lang.free_goods}</span>)<!-- {/if} -->
</td>
<td bgcolor="#ffffff">{$goods.goods_attr|nl2br}</td>
<!-- {if $show_marketprice} -->
<td align="right" bgcolor="#ffffff">{$goods.formated_market_price}</td>
<!-- {/if} -->
<td bgcolor="#ffffff" align="right">{$goods.formated_goods_price}</td>
<td bgcolor="#ffffff" align="right">{$goods.goods_number}</td>
<td bgcolor="#ffffff" align="right">{$goods.formated_subtotal}</td>
</tr>
<!-- {/foreach} -->
<!-- {if !$gb_deposit} 团购且有保证金时不显示 -->
<tr>
<td bgcolor="#ffffff" colspan="7">
<!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} -->
{$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!--{/if}-->
</td>
</tr>
<!-- {/if} -->
</table>
</div>
<div class="blank"></div>
<div class="flowBox">
<h6><span>{$lang.consignee_info}</span><a href="flow.php?step=consignee" class="f6">{$lang.modify}</a></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff">{$lang.consignee_name}:</td>
<td bgcolor="#ffffff">{$consignee.consignee|escape}</td>
<td bgcolor="#ffffff">{$lang.email_address}:</td>
<td bgcolor="#ffffff">{$consignee.email|escape}</td>
</tr>
<!-- {if $total.real_goods_count gt 0} -->
<tr>
<td bgcolor="#ffffff">{$lang.detailed_address}:</td>
<td bgcolor="#ffffff">{$consignee.address|escape} </td>
<td bgcolor="#ffffff">{$lang.postalcode}:</td>
<td bgcolor="#ffffff">{$consignee.zipcode|escape}</td>
</tr>
<!-- {/if} -->
<tr>
<td bgcolor="#ffffff">{$lang.phone}:</td>
<td bgcolor="#ffffff">{$consignee.tel} </td>
<td bgcolor="#ffffff">{$lang.backup_phone}:</td>
<td bgcolor="#ffffff">{$consignee.mobile|escape}</td>
</tr>
<!-- {if $total.real_goods_count gt 0} -->
<tr>
<td bgcolor="#ffffff">{$lang.sign_building}:</td>
<td bgcolor="#ffffff">{$consignee.sign_building|escape} </td>
<td bgcolor="#ffffff">{$lang.deliver_goods_time}:</td>
<td bgcolor="#ffffff">{$consignee.best_time|escape}</td>
</tr>
<!-- {/if} -->
</table>
</div>
<div class="blank"></div>
<!--{if $total.real_goods_count neq 0}-->
<div class="flowBox">
<h6><span>{$lang.shipping_method}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd" id="shippingTable">
<tr>
<th bgcolor="#ffffff" width="5%"> </th>
<th bgcolor="#ffffff" width="25%">{$lang.name}</th>
<th bgcolor="#ffffff">{$lang.describe}</th>
<th bgcolor="#ffffff" width="15%">{$lang.fee}</th>
<th bgcolor="#ffffff" width="15%">{$lang.free_money}</th>
<th bgcolor="#ffffff" width="15%">{$lang.insure_fee}</th>
</tr>
<!-- {foreach from=$shipping_list item=shipping} 循环配送方式 -->
<tr>
<td bgcolor="#ffffff" valign="top"><input name="shipping" type="radio" value="{$shipping.shipping_id}" {if $order.shipping_id eq $shipping.shipping_id}checked="true"{/if} supportCod="{$shipping.support_cod}" insure="{$shipping.insure}" οnclick="selectShipping(this)" />
</td>
<td bgcolor="#ffffff" valign="top"><strong>{$shipping.shipping_name}</strong></td>
<td bgcolor="#ffffff" valign="top">{$shipping.shipping_desc}</td>
<td bgcolor="#ffffff" align="right" valign="top">{$shipping.format_shipping_fee}</td>
<td bgcolor="#ffffff" align="right" valign="top">{$shipping.free_money}</td>
<td bgcolor="#ffffff" align="right" valign="top">{if $shipping.insure neq 0}{$shipping.insure_formated}{else}{$lang.not_support_insure}{/if}</td>
</tr>
<!-- {/foreach} 循环配送方式 -->
<tr>
<td colspan="6" bgcolor="#ffffff" align="right"><label for="ECS_NEEDINSURE">
<input name="need_insure" id="ECS_NEEDINSURE" type="checkbox" οnclick="selectInsure(this.checked)" value="1" {if $order.need_insure}checked="true"{/if} {if $insure_disabled}disabled="true"{/if} />
{$lang.need_insure} </label></td>
</tr>
</table>
</div>
<div class="blank"></div>
<!--{else}-->
<input name = "shipping" type="radio" value = "-1" checked="checked" style="display:none"/>
<!--{/if}-->
<!--{if $is_exchange_goods neq 1 || $total.real_goods_count neq 0}-->
<div class="flowBox">
<h6><span>{$lang.payment_method}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd" id="paymentTable">
<tr>
<th width="5%" bgcolor="#ffffff"> </th>
<th width="20%" bgcolor="#ffffff">{$lang.name}</th>
<th bgcolor="#ffffff">{$lang.describe}</th>
<th bgcolor="#ffffff" width="15%">{$lang.pay_fee}</th>
</tr>
<!-- {foreach from=$payment_list item=payment} -->
<!-- 循环支付方式 -->
<tr>
<td valign="top" bgcolor="#ffffff"><input type="radio" name="payment" value="{$payment.pay_id}" {if $order.pay_id eq $payment.pay_id}checked{/if} isCod="{$payment.is_cod}" οnclick="selectPayment(this)" {if $cod_disabled and $payment.is_cod eq "1"}disabled="true"{/if}/></td>
<td valign="top" bgcolor="#ffffff"><strong>{$payment.pay_name}</strong></td>
<td valign="top" bgcolor="#ffffff">{$payment.pay_desc}</td>
<td align="right" bgcolor="#ffffff" valign="top">{$payment.format_pay_fee}</td>
</tr>
<!-- {/foreach} 循环支付方式 -->
</table>
</div>
<!--{else}-->
<input name = "payment" type="radio" value = "-1" checked="checked" style="display:none"/>
<!--{/if}-->
<div class="blank"></div>
<!-- {if $pack_list} 是否有包装 -->
<div class="flowBox">
<h6><span>{$lang.goods_package}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd" id="packTable">
<tr>
<th width="5%" scope="col" bgcolor="#ffffff"> </th>
<th width="35%" scope="col" bgcolor="#ffffff">{$lang.name}</th>
<th width="22%" scope="col" bgcolor="#ffffff">{$lang.price}</th>
<th width="22%" scope="col" bgcolor="#ffffff">{$lang.free_money}</th>
<th scope="col" bgcolor="#ffffff">{$lang.img}</th>
</tr>
<tr>
<td valign="top" bgcolor="#ffffff"><input type="radio" name="pack" value="0" {if $order.pack_id eq 0}checked="true"{/if} οnclick="selectPack(this)" /></td>
<td valign="top" bgcolor="#ffffff"><strong>{$lang.no_pack}</strong></td>
<td valign="top" bgcolor="#ffffff"> </td>
<td valign="top" bgcolor="#ffffff"> </td>
<td valign="top" bgcolor="#ffffff"> </td>
</tr>
<!-- {foreach from=$pack_list item=pack} 循环包装 -->
<tr>
<td valign="top" bgcolor="#ffffff"><input type="radio" name="pack" value="{$pack.pack_id}" {if $order.pack_id eq $pack.pack_id}checked="true"{/if} οnclick="selectPack(this)" />
</td>
<td valign="top" bgcolor="#ffffff"><strong>{$pack.pack_name}</strong></td>
<td valign="top" bgcolor="#ffffff" align="right">{$pack.format_pack_fee}</td>
<td valign="top" bgcolor="#ffffff" align="right">{$pack.format_free_money}</td>
<td valign="top" bgcolor="#ffffff" align="center">
<!-- {if $pack.pack_img} 是否有图片 -->
<a href="data/packimg/{$pack.pack_img}" target="_blank" class="f6">{$lang.view}</a>
<!-- {else} -->
{$lang.no}
<!-- {/if} -->
</td>
</tr>
<!-- {/foreach} 循环包装 -->
</table>
</div>
<div class="blank"></div>
<!-- {/if} 是否使用包装 -->
<!-- {if $card_list} 是否有贺卡 -->
<div class="flowBox">
<h6><span>{$lang.goods_card}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd" id="cardTable">
<tr>
<th bgcolor="#ffffff" width="5%" scope="col"> </th>
<th bgcolor="#ffffff" width="35%" scope="col">{$lang.name}</th>
<th bgcolor="#ffffff" width="22%" scope="col">{$lang.price}</th>
<th bgcolor="#ffffff" width="22%" scope="col">{$lang.free_money}</th>
<th bgcolor="#ffffff" scope="col">{$lang.img}</th>
</tr>
<tr>
<td bgcolor="#ffffff" valign="top"><input type="radio" name="card" value="0" {if $order.card_id eq 0}checked="true"{/if} οnclick="selectCard(this)" /></td>
<td bgcolor="#ffffff" valign="top"><strong>{$lang.no_card}</strong></td>
<td bgcolor="#ffffff" valign="top"> </td>
<td bgcolor="#ffffff" valign="top"> </td>
<td bgcolor="#ffffff" valign="top"> </td>
</tr>
<!-- {foreach from=$card_list item=card} 循环贺卡 -->
<tr>
<td valign="top" bgcolor="#ffffff"><input type="radio" name="card" value="{$card.card_id}" {if $order.card_id eq $card.card_id}checked="true"{/if} οnclick="selectCard(this)" />
</td>
<td valign="top" bgcolor="#ffffff"><strong>{$card.card_name}</strong></td>
<td valign="top" align="right" bgcolor="#ffffff">{$card.format_card_fee}</td>
<td valign="top" align="right" bgcolor="#ffffff">{$card.format_free_money}</td>
<td valign="top" align="center" bgcolor="#ffffff">
<!-- {if $card.card_img} 是否有图片 -->
<a href="data/cardimg/{$card.card_img}" target="_blank" class="f6">{$lang.view}</a>
<!-- {else} -->
{$lang.no}
<!-- {/if} -->
</td>
</tr>
<!-- {/foreach} 循环贺卡 -->
<tr>
<td bgcolor="#ffffff"></td>
<td bgcolor="#ffffff" valign="top"><strong>{$lang.bless_note}:</strong></td>
<td bgcolor="#ffffff" colspan="3"><textarea name="card_message" cols="60" rows="3" style="width:auto; border:1px solid #ccc;">{$order.card_message|escape}</textarea></td>
</tr>
</table>
</div>
<div class="blank"></div>
<!-- {/if} 是否使用贺卡 -->
<div class="flowBox">
<h6><span>{$lang.other_info}</span></h6>
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<!-- {if $allow_use_surplus} 是否使用余额 -->
<tr>
<td width="20%" bgcolor="#ffffff"><strong>{$lang.use_surplus}: </strong></td>
<td bgcolor="#ffffff"><input name="surplus" type="text" class="inputBg" id="ECS_SURPLUS" size="10" value="{$order.surplus|default:0}" οnblur="changeSurplus(this.value)" {if $disable_surplus}disabled="disabled"{/if} />
{$lang.your_surplus}{$your_surplus|default:0} <span id="ECS_SURPLUS_NOTICE" class="notice"></span></td>
</tr>
<!-- {/if} 是否使用余额 -->
<!-- {if $allow_use_integral} 是否使用积分 -->
<tr>
<td bgcolor="#ffffff"><strong>{$lang.use_integral}</strong></td>
<td bgcolor="#ffffff"><input name="integral" type="text" class="input" id="ECS_INTEGRAL" οnblur="changeIntegral(this.value)" value="{$order.integral|default:0}" size="10" />
{$lang.can_use_integral}:{$your_integral|default:0} {$points_name},{$lang.noworder_can_integral}{$order_max_integral} {$points_name}. <span id="ECS_INTEGRAL_NOTICE" class="notice"></span></td>
</tr>
<!-- {/if} 是否使用积分 -->
<!-- {if $allow_use_bonus} 是否使用红包 -->
<tr>
<td bgcolor="#ffffff"><strong>{$lang.use_bonus}:</strong></td>
<td bgcolor="#ffffff">
{$lang.select_bonus}
<select name="bonus" οnchange="changeBonus(this.value)" id="ECS_BONUS" style="border:1px solid #ccc;">
<option value="0" {if $order.bonus_id eq 0}selected{/if}>{$lang.please_select}</option>
<!-- {foreach from=$bonus_list item=bonus} -->
<option value="{$bonus.bonus_id}" {if $order.bonus_id eq $bonus.bonus_id}selected{/if}>{$bonus.type_name}[{$bonus.bonus_money_formated}]</option>
<!-- {/foreach} -->
</select>
{$lang.input_bonus_no}
<input name="bonus_sn" type="text" class="inputBg" size="15" value="{$order.bonus_sn}" />
<input name="validate_bonus" type="button" class="bnt_blue_1" value="{$lang.validate_bonus}" οnclick="validateBonus(document.forms['theForm'].elements['bonus_sn'].value)" style="vertical-align:middle;" />
</td>
</tr>
<!-- {/if} 是否使用红包 -->
<!-- {if $inv_content_list} 能否开发票 -->
<tr>
<td bgcolor="#ffffff"><strong>{$lang.invoice}:</strong>
<input name="need_inv" type="checkbox" class="input" id="ECS_NEEDINV" οnclick="changeNeedInv()" value="1" {if $order.need_inv}checked="true"{/if} />
</td>
<td bgcolor="#ffffff">
<!-- {if $inv_type_list} -->
{$lang.invoice_type}
<select name="inv_type" id="ECS_INVTYPE" {if $order.need_inv neq 1}disabled="true"{/if} οnchange="changeNeedInv()" style="border:1px solid #ccc;">
{html_options options=$inv_type_list selected=$order.inv_type}</select>
<!-- {/if} -->
{$lang.invoice_title}
<input name="inv_payee" type="text" class="input" id="ECS_INVPAYEE" size="20" {if !$order.need_inv}disabled="true"{/if} value="{$order.inv_payee}" οnblur="changeNeedInv()" />
{$lang.invoice_content}
<select name="inv_content" id="ECS_INVCONTENT" {if $order.need_inv neq 1}disabled="true"{/if} οnchange="changeNeedInv()" style="border:1px solid #ccc;">
{html_options values=$inv_content_list output=$inv_content_list selected=$order.inv_content}
</select></td>
</tr>
<!-- {/if} -->
<tr>
<td valign="top" bgcolor="#ffffff"><strong>{$lang.order_postscript}:</strong></td>
<td bgcolor="#ffffff"><textarea name="postscript" cols="80" rows="3" id="postscript" style="border:1px solid #ccc;">{$order.postscript|escape}</textarea></td>
</tr>
<!-- {if $how_oos_list} 是否使用缺货处理 -->
<tr>
<td bgcolor="#ffffff"><strong>{$lang.booking_process}:</strong></td>
<td bgcolor="#ffffff"><!-- {foreach from=$how_oos_list key=how_oos_id item=how_oos_name} -->
<label>
<input name="how_oos" type="radio" value="{$how_oos_id}" {if $order.how_oos eq $how_oos_id}checked{/if} οnclick="changeOOS(this)" />
{$how_oos_name}</label>
<!-- {/foreach} -->
</td>
</tr>
<!-- {/if} 缺货处理结束 -->
</table>
</div>
<div class="blank"></div>
<div class="flowBox">
<h6><span>{$lang.fee_total}</span></h6>
<!-- #BeginLibraryItem "/Library/order_total.lbi" --><!-- #EndLibraryItem -->
<div align="center" style="margin:8px auto;">
<input type="image" src="images/bnt_subOrder.gif" />
<input type="hidden" name="step" value="done" />
</div>
</div>
</form>
<!-- {/if} -->
<!-- {if $step eq "done"} -->
<!-- 订单提交成功 -->
<div class="flowBox" style="margin:30px auto 70px auto;">
<h6 style="text-align:center; height:30px; line-height:30px;">{$lang.remember_order_number}: <font style="color:red">{$order.order_sn}</font></h6>
<table width="99%" align="center" border="0" cellpadding="15" cellspacing="0" bgcolor="#fff" style="border:1px solid #ddd; margin:20px auto;" >
<tr>
<td align="center" bgcolor="#FFFFFF">
<!--{if $order.shipping_name}-->{$lang.select_shipping}: <strong>{$order.shipping_name}</strong>,<!--{/if}-->{$lang.select_payment}: <strong>{$order.pay_name}</strong>。{$lang.order_amount}: <strong>{$total.amount_formated}</strong>
</td>
</tr>
<tr>
<td align="center" bgcolor="#FFFFFF">{$order.pay_desc}</td>
</tr>
<!-- {if $pay_online} -->
<!-- 如果是线上支付则显示支付按钮 -->
<tr>
<td align="center" bgcolor="#FFFFFF">{$pay_online}</td>
</tr>
<!-- {/if} -->
</table>
<!--{if $virtual_card}-->
<div style="text-align:center;overflow:hidden;border:1px solid #E2C822;background:#FFF9D7;margin:10px;padding:10px 50px 30px;">
<!--{foreach from=$virtual_card item=vgoods}-->
<h3 style="color:#2359B1; font-size:12px;">{$vgoods.goods_name}</h3>
<!--{foreach from=$vgoods.info item=card}-->
<ul style="list-style:none;padding:0;margin:0;clear:both">
<!--{if $card.card_sn}-->
<li style="margin-right:50px;float:left;">
<strong>{$lang.card_sn}:</strong><span style="color:red;">{$card.card_sn}</span>
</li><!--{/if}-->
<!--{if $card.card_password}-->
<li style="margin-right:50px;float:left;">
<strong>{$lang.card_password}:</strong><span style="color:red;">{$card.card_password}</span>
</li><!--{/if}-->
<!--{if $card.end_date}-->
<li style="float:left;">
<strong>{$lang.end_date}:</strong>{$card.end_date}
</li><!--{/if}-->
</ul>
<!--{/foreach}-->
<!--{/foreach}-->
</div>
<!--{/if}-->
<p style="text-align:center; margin-bottom:20px;">{$order_submit_back}</p>
</div>
<!-- {/if} -->
<!-- {if $step eq "ticket_done"} -->
<div class="flowBox" style="margin:30px auto 70px auto;">
<h6 style="text-align:center; height:30px; line-height:30px;">{$lang.remember_order_number}:</h6>
<table width="99%" align="center" cellpadding="20" cellspacing="0" bgcolor="#fff" style="border:1px solid #ddd; margin:20px auto;" >
<tr>
<td align="center" bgcolor="#FFFFFF">票号</td>
<td align="center" bgcolor="#FFFFFF">电影名称</td>
<td align="center" bgcolor="#FFFFFF">座位号</td>
</tr>
<!--{foreach from=$carts item=cart}-->
<tr>
<td align="center" bgcolor="#FFFFFF">{$cart.ticket_order}</td>
<td align="center" bgcolor="#FFFFFF">{$cart.film_name}</td>
<td align="center" bgcolor="#FFFFFF">{$cart.seat}</td>
</tr>
<!--{/foreach}-->
</table>
<table width="99%" align="center" cellpadding="20" cellspacing="0" bgcolor="#fff" style="border:1px solid #ddd; margin:20px auto;" >
<tr>
<td align="center" bgcolor="#FFFFFF">总票数:{$num}</td>
<td align="center" bgcolor="#FFFFFF"></td>
<td align="center" bgcolor="#FFFFFF">总金额:{$total_price} 元</td>
</tr>
</table>
</div>
<!-- {/if} -->
<!-- {if $step eq "login"} -->
{insert_scripts files='utils.js,user.js'}
<script type="text/javascript">
{foreach from=$lang.flow_login_register item=item key=key}
var {$key} = "{$item}";
{/foreach}
{literal}
function checkLoginForm(frm) {
if (Utils.isEmpty(frm.elements['username'].value)) {
alert(username_not_null);
return false;
}
if (Utils.isEmpty(frm.elements['password'].value)) {
alert(password_not_null);
return false;
}
return true;
}
function checkSignupForm(frm) {
if (Utils.isEmpty(frm.elements['username'].value)) {
alert(username_not_null);
return false;
}
if (Utils.trim(frm.elements['username'].value).match(/^s*$|^c:\con\con$|[%,'*"st<>&\]/))
{
alert(username_invalid);
return false;
}
if (Utils.isEmpty(frm.elements['email'].value)) {
alert(email_not_null);
return false;
}
if (!Utils.isEmail(frm.elements['email'].value)) {
alert(email_invalid);
return false;
}
if (Utils.isEmpty(frm.elements['password'].value)) {
alert(password_not_null);
return false;
}
if (frm.elements['password'].value.length < 6) {
alert(password_lt_six);
return false;
}
if (frm.elements['password'].value != frm.elements['confirm_password'].value) {
alert(password_not_same);
return false;
}
return true;
}
{/literal}
</script>
<!-- 开始用户登录注册界面 -->
<div class="flowBox">
<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td width="50%" valign="top" bgcolor="#ffffff">
<h6><span>用户登录:</span></h6>
<form action="flow.php?step=login" method="post" name="loginForm" id="loginForm" οnsubmit="return checkLoginForm(this)">
<table width="90%" border="0" cellpadding="8" cellspacing="1" bgcolor="#B0D8FF" class="table">
<tr>
<td bgcolor="#ffffff"><div align="right"><strong>{$lang.username}</strong></div></td>
<td bgcolor="#ffffff"><input name="username" type="text" class="inputBg" id="username" /></td>
</tr>
<tr>
<td bgcolor="#ffffff"><div align="right"><strong>{$lang.password}</strong></div></td>
<td bgcolor="#ffffff"><input name="password" class="inputBg" type="password" /></td>
</tr>
<!-- 判断是否启用验证码{if $enabled_login_captcha} -->
<tr>
<td bgcolor="#ffffff"><div align="right"><strong>{$lang.comment_captcha}:</strong></div></td>
<td bgcolor="#ffffff"><input type="text" size="8" name="captcha" class="inputBg" />
<img src="captcha.php?is_login=1&{$rand}" alt="captcha" style="vertical-align: middle;cursor: pointer;" onClick="this.src='captcha.php?is_login=1&'+Math.random()" /> </td>
</tr>
<!--{/if}-->
<tr>
<td colspan="2" bgcolor="#ffffff"><input type="checkbox" value="1" name="remember" id="remember" /><label for="remember">{$lang.remember}</label></td>
</tr>
<tr>
<td bgcolor="#ffffff" colspan="2" align="center"><a href="user.php?act=qpassword_name" class="f6">{$lang.get_password_by_question}</a> <a href="user.php?act=get_password" class="f6">{$lang.get_password_by_mail}</a></td>
</tr>
<tr>
<td bgcolor="#ffffff" colspan="2"><div align="center">
<input type="submit" class="bnt_blue" name="login" value="{$lang.forthwith_login}" />
<!-- {if $anonymous_buy eq 1} 是否允许未登录用户购物 -->
<input type="button" class="bnt_blue_2" value="{$lang.direct_shopping}" οnclick="location.href='flow.php?step=consignee&direct_shopping=1'" />
<!-- {/if} -->
<input name="act" type="hidden" value="signin" />
</div></td>
</tr>
</table>
</form>
</td>
<td valign="top" bgcolor="#ffffff">
<h6><span>用户注册:</span></h6>
<form action="flow.php?step=login" method="post" name="formUser" id="registerForm" οnsubmit="return checkSignupForm(this)">
<table width="98%" border="0" cellpadding="8" cellspacing="1" bgcolor="#B0D8FF" class="table">
<tr>
<td bgcolor="#ffffff" align="right" width="25%"><strong>{$lang.username}</strong></td>
<td bgcolor="#ffffff"><input name="username" type="text" class="inputBg" id="username" οnblur="is_registered(this.value);" /><br />
<span id="username_notice" style="color:#FF0000"></span></td>
</tr>
<tr>
<td bgcolor="#ffffff" align="right"><strong>{$lang.email_address}</strong></td>
<td bgcolor="#ffffff"><input name="email" type="text" class="inputBg" id="email" οnblur="checkEmail(this.value);" /><br />
<span id="email_notice" style="color:#FF0000"></span></td>
</tr>
<tr>
<td bgcolor="#ffffff" align="right"><strong>{$lang.password}</strong></td>
<td bgcolor="#ffffff"><input name="password" class="inputBg" type="password" id="password1" οnblur="check_password(this.value);" οnkeyup="checkIntensity(this.value)" /><br />
<span style="color:#FF0000" id="password_notice"></span></td>
</tr>
<tr>
<td bgcolor="#ffffff" align="right"><strong>{$lang.confirm_password}</strong></td>
<td bgcolor="#ffffff"><input name="confirm_password" class="inputBg" type="password" id="confirm_password" οnblur="check_conform_password(this.value);" /><br />
<span style="color:#FF0000" id="conform_password_notice"></span></td>
</tr>
<!-- 判断是否启用验证码{if $enabled_register_captcha} -->
<tr>
<td bgcolor="#ffffff" align="right"><strong>{$lang.comment_captcha}:</strong></td>
<td bgcolor="#ffffff"><input type="text" size="8" name="captcha" class="inputBg" />
<img src="captcha.php?{$rand}" alt="captcha" style="vertical-align: middle;cursor: pointer;" onClick="this.src='captcha.php?'+Math.random()" /> </td>
</tr>
<!--{/if}-->
<tr>
<td colspan="2" bgcolor="#ffffff" align="center">
<input type="submit" name="Submit" class="bnt_blue_1" value="{$lang.forthwith_register}" />
<input name="act" type="hidden" value="signup" />
</td>
</tr>
</table>
</form>
</td>
</tr>
{if $need_rechoose_gift}
<tr>
<td colspan="2" align="center" style="border-top:1px #ccc solid; padding:5px; color:red;">{$lang.gift_remainder}</td>
</tr>
{/if}
</table>
</div>
<!-- 结束用户登录注册界面 -->
<!-- {/if} -->
</div>
<div class="blank5"></div>
<!--帮助-->
<div class="block">
<div class="box">
<div class="helpTitBg clearfix">
<!-- #BeginLibraryItem "/library/help.lbi" --><!-- #EndLibraryItem -->
</div>
</div>
</div>
<div class="blank"></div>
<!--帮助-->
<!--友情链接 start-->
<!--{if $img_links or $txt_links }-->
<div id="bottomNav" class="box">
<div class="box_1">
<div class="links clearfix">
<!--开始图片类型的友情链接{foreach from=$img_links item=link}-->
<a href="{$link.url}" target="_blank" title="{$link.name}"><img src="{$link.logo}" alt="{$link.name}" border="0" /></a>
<!--结束图片类型的友情链接{/foreach}-->
<!-- {if $txt_links} -->
<!--开始文字类型的友情链接{foreach from=$txt_links item=link}-->
[<a href="{$link.url}" target="_blank" title="{$link.name}">{$link.name}</a>]
<!--结束文字类型的友情链接{/foreach}-->
<!-- {/if} -->
</div>
</div>
</div>
<!--{/if}-->
<!--友情链接 end-->
<div class="blank"></div>
<!-- #BeginLibraryItem "/library/page_footer.lbi" --><!-- #EndLibraryItem -->
</body>
<script type="text/javascript">
var process_request = "{$lang.process_request}";
{foreach from=$lang.passport_js item=item key=key}
var {$key} = "{$item}";
{/foreach}
var username_exist = "{$lang.username_exist}";
var compare_no_goods = "{$lang.compare_no_goods}";
var btn_buy = "{$lang.btn_buy}";
var is_cancel = "{$lang.is_cancel}";
var select_spe = "{$lang.select_spe}";
</script>
</html>
这样就好了
最后
以上就是成就冬日为你收集整理的ecshop源码开发 ticket(电子票)的全部内容,希望文章能够帮你解决ecshop源码开发 ticket(电子票)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复