帝国CMS会员注册的时候,邮箱是必填项,但有时候,我们希望注册时不需要填写邮箱,但帝国CMS并没有给这样一个可以关闭的设置项。
通过本教程就可以实现取消邮箱必填。
以帝国CMS7.2为例:
打开 /e/member/class/member_registerfun.php 文件
找到
if(!chemail($email))
{
printerror('EmailFail','',1);
}
将其删除或者注释掉
找到
if($pr['regemailonly'])
{
$num=$empire->gettotal("select count(*) as total from ".eReturnMemberTable()." where ".egetmf('email')."='$email' limit 1");
if($num)
{
printerror('ReEmailFail','',1);
}
}
将其删除或者注释掉
找到
if(!$username||!$password||!$email)
修改为
if(!$username||!$password)
=============================================
到这里为止在网上随处可以搜索到,但是还没完!
为什么这么说呢?因为用户可能编辑信息,那时候又变成必填了,还有管理员后台可能修改用户信息,那时也是必填的。接着改!
=============================================
取消会员编辑个人信息时邮箱必填
打开 /e/member/class/member_editinfofun.php
找到
//邮箱 $email=trim($add['email']); if(!$email||!chemail($email)) { printerror("EmailFail","history.go(-1)",1); } $email=RepPostStr($email);
将其删除或者注释掉
找到
//邮箱 $pr=$empire->fetch1("select regemailonly from {$dbtbpre}enewspublic limit 1"); if($pr['regemailonly']) { $num=$empire->gettotal("select count(*) as total from ".eReturnMemberTable()." where ".egetmf('email')."='$email' and ".egetmf('userid')."<>'$userid' limit 1"); if($num) { printerror("ReEmailFail","history.go(-1)",1); } }
将其删除或者注释掉。
==================================
取消管理员编辑会员信息时邮箱必填
打开 /e/member/class/member_adminfun.php
找到
if(!trim($add[userid])||!trim($add[email])||!trim($add[username])||!$add[groupid])
改为
if(!trim($add[userid])||!trim($add[username])||!$add[groupid])
找到
$add[email]=RepPostStr($add[email]);
将其删除或者注释掉。
找到
$email=RepPostStr($add['email']);
将其删除或者注释掉。
找到
if($email)
{
$where.=" and ".egetmf('email')." like '%$email%'";
}
将其删除或者注释掉
===============================
至此才是真正的取消的会员的邮箱必填功能!
![](https://www.zhann.cn/wp-content/uploads/2022/02/1647325342-76d02915ddee31b.jpg)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。