ecshop修改注册、增加手机
1.去掉“用户名”注册
a.去掉提交
user_passport.dwt页面去掉 <input name="username" type="text" size="30" id="username" onblur="is_registered(this.value);" class="input_login" />提交
b.去掉js表单验证,user.js
去掉,var username = Utils.trim(frm.elements['username'].value); 第439行
去掉,
if (username.length == )
{
msg += username_empty + '\n';
}
else if (username.match(/^\s*$|^c:\\con\\con$|[%,\'\*\"\s\t\<\>\&\\]/))
{
msg += username_invalid + '\n';
}
else if (username.length < )
{
//msg += username_shorter + '\n';
}
c.在php代码中,去掉相关的验证 (检测用户名长度),user.php 第40行
在elseif ($action == 'act_register'),去掉
/*if (strlen($username) < 3)
{
show_message($_LANG['passport_js']['username_shorter']);
}*/
注意:下面代码可以选择去掉,也可以选择不去掉。如果不去掉,则只需要把username的值设置不想等就可以了(可以把username的值等于当前时间,则username=time())。那么d,e步骤可以不需要修改
$username = isset($_POST['username']) ? trim($_POST['username']) : '';
推荐解决办法1,user.php:$username = isset($_POST['email']) ? trim($_POST['email']) : '';
推荐解决办法2,user.php: $username = gmtime();
/*以下验证有点小问题 会出现 UNKNOWN ERROR! 提示*/
d.去掉验证(检测用户名是否为空),lib_passport.php
if (empty($username))
{
$GLOBALS['err']->add($GLOBALS['_LANG']['username_empty']);
}
else
{
if (preg_match('/\'\/^\\s*$|^c:\\\\con\\\\con$|[%,\\*\\"\\s\\t\\<\\>\\&\'\\\\]/', $username))
{
$GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_invalid'], htmlspecialchars($username)));
}
}
e.去掉验证(检测用户名是否已经存在),lib_passport.php 第87行
/*elseif ($GLOBALS['user']->error == ERR_USERNAME_EXISTS)
{
$GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['username_exist'], $username));
}*/
2.增加手机验证功能
a.html代码
<tr>
<td align="right">手机:</td>
<td>
<input name="mobile_phone" type="text" class="input_login" id="mobile_phone" onblur="checkMobile(this.value);" size=""/>
<span style="color:#FF0000"> *</span>
</td>
</tr>
<tr>
<td align="right"> </td>
<td><span id="mobile_notice" class="red"></span> </td></tr>
b.增加js代码,checkMobile效果,user.js
function checkMobile(mobile)
{
var submit_disabled = false;
mobile = Utils.trim(mobile); if (mobile == '')
{
document.getElementById('mobile_notice').innerHTML = '* 手机号码不能为空';
submit_disabled = true;
}else if(mobile.length !=){
document.getElementById('mobile_notice').innerHTML = '* 不是一个有效的手机号码';
submit_disabled = true;
} if( submit_disabled )
{
document.forms['formUser'].elements['Submit'].disabled = 'disabled';
return false;
}
Ajax.call( 'user.php?act=check_mobile', 'mobile=' + mobile, check_mobile_callback , 'GET', 'TEXT', true, true );
}
function check_mobile_callback(result){
if ( result == 'ok' )
{
document.getElementById('mobile_notice').innerHTML = '* 可以注册';
document.forms['formUser'].elements['Submit'].disabled = '';
}
else
{
document.getElementById('mobile_notice').innerHTML = '* 手机已经被注册,请重新输入';
document.forms['formUser'].elements['Submit'].disabled = 'disabled';
}
}
c.增加Ajax访问check_mobile,user.php 第302行
elseif($action == 'check_email')
{
$email = trim($_GET['email']);
if ($user->check_email($email))
{
echo 'false';
}
else
{
echo 'ok';
}
}
/*增加代码*/
elseif($action == 'check_mobile'){
$mobile = trim($_GET['mobile']);
$sql = 'SELECT user_name, email FROM ' . $ecs->table('users') . " WHERE mobile_phone = '$mobile'";
$row = $db->getRow($sql);
if($row){
echo 'false';
}else{
echo 'ok';
}
} /*End*/
ecshop修改注册、增加手机的更多相关文章
- ecshop注册用户增加手机验证功能
1.去掉“用户名”注册 a.去掉提交 user_passport.dwt页面去掉 <input name="username" type="text" s ...
- 将ECSHOP会员注册页面的Email修改成非必填项
将ECSHOP会员注册页面的Email修改成非必填项 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2011-07-29 有人说,在后台的 “会员注册项设置 ”里面 ...
- C#综合揭秘——通过修改注册表建立Windows自定义协议
引言 本文主要介绍注册表的概念与其相关根项的功能,以及浏览器如何通过连接调用自定义协议并与客户端进行数据通信.文中讲及如何通过C#程序.手动修改.安装项目等不同方式对注册表进行修改.其中通过安装项目对 ...
- windows文件关联、打开方式列表之修改注册表攻略
这里全是修改注册表的方式.网上找了半天,有的仅有添加文件关联的方法,却没有添加到打开方式列表里面的方法:有的有添加到文件列表的方法,却是使 用控制面板->文件夹选项的.好难得才找齐所有,从添加文 ...
- 通过cmd修改注册表并设置cmd窗口的大小
设置cmd的窗口 mode: modem设置系统设备,主要是lpt1, com1/2, con: 启动时设置窗口大小: cmd /k "mode con: cols=120 lines=40 ...
- 【转】C#综合揭秘——通过修改注册表建立Windows自定义协议
引言 本文主要介绍注册表的概念与其相关根项的功能,以及浏览器如何通过连接调用自定义协议并与客户端进行数据通信.文中讲及如何通过C#程序.手动修改.安装项目等不同方式对注册表进行修改.其中通过安装项目对 ...
- 7、ABPZero系列教程之拼多多卖家工具 修改注册功能
本篇开始进入重头戏,之前的几篇文章都是为了现在的功能作准备.前面教程已经讲到修改User表结构,接下来就需要修改注册逻辑代码. 注册页面 修改Register.cshtml,备注如下代码: 文件路径: ...
- 通过修改注册表建立Windows自定义协议
引言 本文主要介绍注册表的概念与其相关根项的功能,以及浏览器如何通过连接调用自定义协议并与客户端进行数据通信.文中讲及如何通过C#程序.手动修改.安装项目等不同方式对注册表进行修改.其中通过安装项目对 ...
- 通过cmd修改注册表(设置cmd窗口的大小)
通过cmd修改注册表(设置cmd窗口的大小) 设置cmd的窗口 mode: modem设置系统设备,主要是lpt1, com1/2, con:启动时设置窗口大小: cmd /k "mode ...
随机推荐
- 在Winform中播放视频等【DotNet,C#】
在项目中遇到过这样的问题,就是如何在Winform中播放视频.当时考察了几种方式,第一种是直接使用Windows Media Player组件,这种最简单:第二种是利用DirectX直接在窗体或者控件 ...
- java基础语法要点<一>(基于1.8)
http://yishouce.com/java/run http://www.shucunwang.com/RunCode/java/ 数据类型 8种基本数据类型及对应的 类型封装器 byte, s ...
- 微信支付系列(2)——jsapi支付源码解析
版权声明:转载请注明出处:http://blog.csdn.net/m0sh1 http://www.share345.com 在微信支付 开发者文档页面 下载最新的 PHP SDK http://m ...
- WordPress的have_posts()和the_post()用法解析
原文地址:http://www.phpvar.com/archives/2316.html 网上找到一篇介绍WordPress的have_posts()和the_post()用法解析的文章,觉得不错! ...
- DIV 文字强制换行
一.对于div强制换行1.(IE浏览器)white-space:normal; word-break:break-all;这里前者是遵循标准.#wrap{white-space:normal; wid ...
- 【学习笔记&训练记录】数位DP
数位DP,即对数位进行拆分,利用数位来转移的一种DP,一般采用记忆化搜索,或者是先预处理再进行转移 一个比较大略的思想就是可以对于给定的大数,进行按数位进行固定来转移记录答案 区间类型的,可以考虑前缀 ...
- Exceptionin thread "main" java.lang.UnsatisfiedLinkError:org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava
这是由于hadoop.dll 版本问题,2.4之前的和自后的需要的不一样 需要选择正确的版本并且在 Hadoop/bin和 C:\windows\system32 上将其替换
- Gulp解决发布线上文件(CSS和JS)缓存问题
Gulp解决发布线上文件(CSS和JS)缓存问题 本文的缘由:目前经常线上发布文件后要不断的刷新页面及过很长时间,页面上的CSS和JS文件才能生效,特别对于目前做微信商城的时候,微信内置的浏览器缓存非 ...
- USACO 3.4 Electric Fence 皮克定理
题意:在方格纸上画出一个三角形,求三角形里面包含的格点的数目 因为其中一条边就是X轴,一开始想的是算出两条边对应的数学函数,然后枚举x坐标值求解.但其实不用那么麻烦. 皮克定理:给定顶点坐标均是整点( ...
- 解决“HTTP/1.1 405 Method not allowed”问题
Apache.IIS.Nginx等绝大多数web服务器,都不允许静态文件响应POST请求,否则会返回"HTTP/1.1 405 Method not allowed"错误. 即,将 ...