Smarty3.1X( 最新版本 3.1.19) 比起Smarty2.x修改了不少特性。我把这个模块使用Smarty3.1.18 ( 下载地址http://www.smarty.net/files/Smarty-3.1.18.zip )重新修改了一遍,是项目文件和目录看起来更干净更有调理。
把Smarty压缩包中的libs文件夹拷贝至模块根目录下,然后根目录创建init.inc.php:
复制代码 代码如下:
<"ROOT",str_replace("\\","/",dirname(__FILE__))."/");
require ROOT.'libs/Smarty.class.php';
$smarty = new Smarty();
//Smarty3设置默认路径
$smarty ->setTemplateDir(ROOT.'templates/')
->setCompileDir(ROOT.'templates_c/')
->setPluginsDir(ROOT.'plugins/')
->setCacheDir(ROOT.'cache/')
->setConfigDir(ROOT.'configs');
$smarty->caching = false;
$smarty->cache_lifetime = 60*60*24; //模版缓存有效时间为1天
$smarty->left_delimiter = '<{';
$smarty->right_delimiter = '}>';
/***********************************************************/
//根目录url方式
$PHP_SELF=$_SERVER['PHP_SELF'];
$ROOT_URL='http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF,0,strrpos($PHP_SELF,'/')+1);
define(ROOT_URL,$ROOT_URL);
//模版目录url方式
define("Template_Dir",$ROOT_URL.'templates');
创建初始化文件中出现的templates,templates_c,plugins,cache,configs文件夹。
修改的文件都比较相似,而且也非常easy,这里列出register.html和register.php文件的修改。
register.html是注册的前台页面,路径是/templates/register.html
复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>注册页面</title>
<link href="<{$Template_Dir}>/css/common.css" rel="stylesheet" type="text/css">
<link href="<{$Template_Dir}>/css/register.css" rel="stylesheet" type="text/css">
<script src="/UploadFiles/2021-04-02/jquery-1.8.3.min.js">
<script src="<{$Template_Dir}>/js/register.js">
<!--邮箱下拉-->
<script src="/UploadFiles/2021-04-02/emailup.js">
</head>
<body>
<{*导入header.html*}>
<{include file="header.html"}>
<!-- 内容区 -->
<div id="container">
<!--注册区-->
<div id="register">
<!-- 注册表单 -->
<form id="register-form" action="register_chk.php" method="post">
<!-- 用户名 -->
<!-- placeholder HTML5的属性,提供提示信息。输入字段为空时显示,并会在字段获得焦点时消失 -->
<div class="ipt fipt">
<input type="text" name="uname" id="uname" value="" placeholder="输入用户名" autocomplete="off" />
<!--提示文字-->
<span id="unamechk"></span>
</div>
<!-- email -->
<div class="ipt">
<input type="text" name="uemail" id="uemail" value="" placeholder="常用邮箱地址" autocomplete="off" /><span id="uemailchk"></span><ul class="autoul"></ul>
</div>
<!-- 密码 -->
<div class="ipt">
<input type="password" name="upwd" id="upwd" value="" placeholder="设置密码" /><div class="upwdpic"><span id="upwdchk"></span><img id="pictie" /></div>
</div>
<!-- 重复密码 -->
<div class="ipt">
<input type="password" name="rupwd" id="rupwd" value="" placeholder="确认密码" /><span id="rupwdchk"></span>
</div>
<!--验证码-->
<div class="ipt iptend">
<input type='text' id='yzm' name='yzm' placeholder="验证码" autocomplete="off" />
<img id='yzmpic' src='valcode.php"cursor:pointer" alt="验证码" title="验证码">
<a style="cursor:pointer" id='changea'>
<img id="refpic" src="/UploadFiles/2021-04-02/ref.jpg">
</a>
<span id='yzmchk'></span>
</div>
<!-- 提交 -->
<button type="button" id="sub">立即注册</button>
<!-- 服务条款 -->
<span class="fuwu">
<input type="checkbox" name="agree" id="agree" checked="checked">
<label for="agree">我同意 <a href="#">" 服务条款 "</a> 和 <a href="#">" 网络游戏用户隐私权保护和个人信息利用政策 "</a>
</label>
</span>
</form>
</div>
</div>
</body>
</html>
register.php:
复制代码 代码如下:
<"Template_Dir",Template_Dir);
$smarty->display('register.html');
同时扩充了生成验证码插件,路径是/plugins/function.showval.php
复制代码 代码如下:
<"";
for($i=0;$i<4;$i++){
$tmp = rand(1,15);
if ($tmp > 9) {
switch ($tmp) {
case(10):
$num .= 'a';
break;
case(11):
$num .= 'b';
break;
case(12):
$num .= 'c';
break;
case(13):
$num .= 'd';
break;
case(14):
$num .= 'e';
break;
case(15):
$num .= 'f';
break;
}
} else {
$num .= $tmp;
}
}
$mdnum = md5($num);
$_SESSION['num'] = $num;
$_SESSION['mdnum'] = $mdnum;
//写在session之后
return $mdnum;
}
$_SESSION['num'] = smarty_function_showval($params,$smarty);
$_SESSION['mdnum'] = md5(smarty_function_showval($params,$smarty));
注意插件的命名:
文件名要放在根目录的plugins目录下,命名规则是 function.函数名.php,文件中函数的命名规则是 smarty_function_函数名($params,$smarty),其中第一个参数是传递给模板的关联数组,第二个参数是接收自动传入的smarty对象,函数要有返回值。
更多代码见:https://github.com/dee0912/myGit
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 第五街的士高《印度激情版》3CD [WAV+CUE][2.4G]
- 三国志8重制版哪个武将智力高 三国志8重制版智力武将排行一览
- 三国志8重制版哪个武将好 三国志8重制版武将排行一览
- 三国志8重制版武将图像怎么保存 三国志8重制版武将图像设置方法
- 何方.1990-我不是那种人【林杰唱片】【WAV+CUE】
- 张惠妹.1999-妹力新世纪2CD【丰华】【WAV+CUE】
- 邓丽欣.2006-FANTASY【金牌大风】【WAV+CUE】
- 饭制《黑神话》蜘蛛四妹手办
- 《燕云十六声》回应跑路:年内公测版本完成95%
- 网友发现国内版《双城之战》第二季有删减:亲亲环节没了!
- 邓丽君2024-《漫步人生路》头版限量编号MQA-UHQCD[WAV+CUE]
- SergeProkofievplaysProkofiev[Dutton][FLAC+CUE]
- 永恒英文金曲精选4《TheBestOfEverlastingFavouritesVol.4》[WAV+CUE]
- 群星《国风超有戏 第9期》[320K/MP3][13.63MB]
- 群星《国风超有戏 第9期》[FLAC/分轨][72.56MB]