ecshop会员登录记录用户名
ecshop登陆的时候,很多情况下,为了提高用户体验,或者方便用户登陆。我们可以在用户退出的时候,记录他们的登陆名称。
下次登陆的时候,只需要填写密码就可以了。
思路:
只需要 在每次登陆的时候 写一个cookie 存用户名
然后每次打开登陆页面的时候 查找并显示这个用户名就行了
user.php
1,setcookie('username',$username,time()+24*3600*30);//添加cookie保存时间
2,$smarty->assign('username', $_COOKIE['username']);//存cookie的值,用于保存登录的值
user_password.dwt
3,增加value="{$username}" 的值 用于登录
<input name="username" type="text" size="25" value="{$username}" class="inputBg" /></td>
/* 2用户登录界面 */
elseif ($action == 'login')
{
if (empty($back_act))
{
if (empty($back_act) && isset($GLOBALS['_SERVER']['HTTP_REFERER']))
{
$back_act = strpos($GLOBALS['_SERVER']['HTTP_REFERER'], 'user.php') ? './index.php' : $GLOBALS['_SERVER']['HTTP_REFERER'];
}
else
{
$back_act = 'user.php';
}
}
$captcha = intval($_CFG['captcha']);
if (($captcha & CAPTCHA_LOGIN) && (!($captcha & CAPTCHA_LOGIN_FAIL) || (($captcha & CAPTCHA_LOGIN_FAIL) && $_SESSION['login_fail'] > 2)) && gd_version() > 0)
{
$GLOBALS['smarty']->assign('enabled_captcha', 1);
$GLOBALS['smarty']->assign('rand', mt_rand());
}
$smarty->assign('username', $_COOKIE['username']);//保存cookie的值,用于登录
$smarty->assign('back_act', $back_act);
$smarty->display('user_passport.dwt');
}
/* 1处理会员的登录 */
elseif ($action == 'act_login')
{
$username = isset($_POST['username']) ? trim($_POST['username']) : '';
$password = isset($_POST['password']) ? trim($_POST['password']) : '';
$back_act = isset($_POST['back_act']) ? trim($_POST['back_act']) : '';
$captcha = intval($_CFG['captcha']);
if (($captcha & CAPTCHA_LOGIN) && (!($captcha & CAPTCHA_LOGIN_FAIL) || (($captcha & CAPTCHA_LOGIN_FAIL) && $_SESSION['login_fail'] > 2)) && gd_version() > 0)
{
if (empty($_POST['captcha']))
{
show_message($_LANG['invalid_captcha'], $_LANG['relogin_lnk'], 'user.php', 'error');
}
/* 检查验证码 */
include_once('includes/cls_captcha.php');
$validator = new captcha();
$validator->session_word = 'captcha_login';
if (!$validator->check_word($_POST['captcha']))
{
show_message($_LANG['invalid_captcha'], $_LANG['relogin_lnk'], 'user.php', 'error');
}
}
if ($user->login($username, $password,isset($_POST['remember'])))
{
update_user_info();
recalculate_price();
setcookie('username',$username,time()+24*3600*30);//添加cookie保存时间
$ucdata = isset($user->ucdata)? $user->ucdata : '';
show_message($_LANG['login_success'] . $ucdata , array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act,'user.php'), 'info');
}
else
{
$_SESSION['login_fail'] ++ ;
show_message($_LANG['login_failure'], $_LANG['relogin_lnk'], 'user.php', 'error');
}
}
<!--#3登录界面 start-->
<!-- {if $action eq 'login'} -->
<div class="usBox clearfix">
<div class="usBox_1 f_l">
<div class="logtitle"></div>
<form name="formLogin" action="user.php" method="post" onSubmit="return userLogin()">
<table width="100%" border="0" align="left" cellpadding="3" cellspacing="5">
<tr>
<td width="15%" align="right">{$lang.label_username}</td>
<td width="85%"><input name="username" type="text" size="25" value="{$username}" class="inputBg" /></td>
</tr>
<tr>
<td align="right">{$lang.label_password}</td>
<td>
<input name="password" type="password" size="15" class="inputBg"/>
</td>
</tr>
<!-- 判断是否启用验证码{if $enabled_captcha} -->
<tr>
<td align="right">{$lang.comment_captcha}</td>
<td><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"><input type="checkbox" value="1" name="remember" id="remember" /><label for="remember">{$lang.remember}</label></td>
</tr>
<tr>
<td> </td>
<td align="left">
<input type="hidden" name="act" value="act_login" />
<input type="hidden" name="back_act" value="{$back_act}" />
<input type="submit" name="submit" value="" class="us_Submit" />
</td>
</tr>
<tr><td></td><td><a href="user.php?act=qpassword_name" class="f3">{$lang.get_password_by_question}</a> <a href="user.php?act=get_password" class="f3">{$lang.get_password_by_mail}</a></td></tr>
</table>
</form>
</div>
<div class="usTxt">
<strong>{$lang.user_reg_info[0]}</strong> <br />
<strong class="f4">{$lang.user_reg_info[1]}:</strong><br />
<!-- {if $car_off eq 1} -->
{$lang.user_reg_info[2]}<br />
<!--{/if}-->
<!-- {if $car_off eq 0} -->
{$lang.user_reg_info[8]}<br />
<!--{/if}-->
{$lang.user_reg_info[3]}:<br />
1. {$lang.user_reg_info[4]}<br />
2. {$lang.user_reg_info[5]}<br />
3. {$lang.user_reg_info[6]}<br />
4. {$lang.user_reg_info[7]} <br />
<a href="user.php?act=register"><img src="data:images/bnt_ur_reg.gif" /></a>
</div>
</div>
<!--{/if}-->
<!--#登录界面 end-->
ecshop会员登录记录用户名相关推荐
- ECSHOP会员注册审核插件【会员注册审核登录】ECSHOP会员注册审核插件,会员注册审核通过登录
ECSHOP会员注册审核插件,会员注册审核通过登录 功能简介: ECSHOP会员注册审核登录插件实现了用户注册是否需要管理员审核的可控制功能!后台开启注册审核,用户注册成功则需要等待管理 ...
- 用户未登录重定向到登录界面_Linux 用户登录记录
简介 服务器很多时候哦都是会开放远程登录端口,这时候我们就会关注 用户登录记录 . 在 Linux 上,有关用户登录的信息记录在 utmp(/var/run/utmp).wtmp(/var/log/w ...
- dede login.php,DedeCms会员登录成功,又跳转到登录页面
我使用的是dedecms5.7的sp1版本,整合了Discuz+UChome,三个都通信成功.然后后面我测试同步登录和退出的时候,发现dede的会员登录成功,但是又马上跳转到登录页面,就是说不能进入会 ...
- SQL Server2012登录记录怎么删除?
在win7中首先找到以下路径: C:\Users\[用户名]\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0 然后删除以下文件: ...
- 织梦会员登录PHP,DEDECMS会员登录后跳转首页的简单实现方法
DEDECMS会员登录后跳转首页的简单实现方法 互联网 发布时间:2009-06-06 15:06:24 作者:jb51 我要评论 关键字描述:简单 实现 方法 首页 会员 登录 & ...
- centos查看历史指令记录_CentOS清除SSH登录记录、历史命令及日志缓存
清除 SSH 登录记录 SSH 登录日志以二进制方式存储在以下文件内,需要使用对应命令查看,不然会显示乱码. 日志文件 查看命令 日志内容 /var/log/wtmp last 登录成功日志,包含用户 ...
- 带翻转特效的会员登录注册html页面源码
大家好,今天给大家介绍一款,带翻转特效的会员登录注册html页面源码(图1).送给大家哦,获取方式在本文末尾. 图1 点击登录和注册切换时,带翻转特效(图2) 图2 源码完整,需要的朋友可以下载学习( ...
- C语言课程设计:连锁超市会员消费记录管理系统
3天时间做的,全部都是自己敲的代码 博客原文链接 #include<stdio.h> #include<stdlib.h> #include<string.h> s ...
- poscms会员登录接口
此接口会员登录获取会员详情. 一.接口URL http://www.fc2.com/index.php?c=api&m=data2&auth=授权认证码¶m=login ...
最新文章
- SAP Basis DEBUG改表数据权限角色设计
- 机器学习笔记(十六)强化学习
- c++Error:c++调用python文件提示由于找不到python3.8.dll,无法继续运行。。。
- python简说(二十二)写日志
- 2019-03-09-算法-进化(买卖股票的最佳时机 II)
- 【DP】数字游戏(jzoj 2131)
- Angular最新教程-第六节编写响应式导航栏
- 如何将本地代码推送至远程仓库_命令简化版本
- 转:VMware、微软等四种主要的网络IO虚拟化模型
- 仅用 10 天设计的 JavaScript,凭什么成为程序员最受欢迎的编程语言?
- 一道Struts面试题
- 获取相对于父元素的位置
- c++ find()
- Arduino提高篇01—点亮OLED显示屏
- 黑盒测试与白盒测试(结合例子详细讲解)
- win10 2016 长期服务版激活
- Excelize 发布 2.6.0 版本,功能强大的 Excel 文档基础库
- 2.3Linux中的日志管理
- MacBook上下载安装Mysql
- php exec pdfbox 方块,Windows explorer hangs up FTP connection after PASV command