dedecms5.7商城系统游客可下订单购买的修改方法
办法1、
修改DEDE本身的订单程序,DEDE不就是要求注册会员才可以吗 ? 简单 那我现在注册一个公共会员 写死在程序中去 就是在用户名和密码字段我直接自动写了值 不就OK了吗 呵呵,当然如果你想智能一点 如果用户是会员 则用用户的会员号 否则就用默认的账号 也简单呀 js呗 !!!
办法2、
可以这样操作试一下 后台先开启会员功能 如果不希望有会员加入 可以禁止会员注册
然后找到plus/carbuyaction.php文件
删除以下代码
复制代码代码如下:
//确认用户登录信息
if($cfg_ml->IsLogin())
{
$userid = $cfg_ml->M_ID;
}
else
{
$username = trim($username);
$password = trim($password);
if(empty($username) || $password)
{
ShowMsg("请选登录!","-1",0,2000);
exit();
}
$rs = $cfg_ml->CheckUser($username,$password);
if($rs==0)
{
ShowMsg("用户名不存在!","-1",0,2000);
exit();
}
else if($rs==-1)
{
ShowMsg("密码错误!","-1",0,2000);
exit();
}
$userid = $cfg_ml->M_ID;
}
在我这个网站中,这两个都不能完全解决问题,但是结合一下两个人的,正好符合我的要求。第一个人的思路中存在一个问题,就是“如果有人买了东西没有支付 后来的用户不是要一起支付了 能看到其它的未支付订单”,下面有人提出了这个质疑,不太理想。第二个人把那段代码删除后,那就是把用户登录的信息也没在订单中关联起来了,所以我们即要游客可以订单,会员也能购买。如是我作了如下修改:
/plus/carbuyaction.php的
复制代码代码如下:
//确认用户登录信息
if($cfg_ml->IsLogin())
{
$userid = $cfg_ml->M_ID;
}
else
{
$username = trim($username);
$password = trim($password);
if(empty($username) || $password)
{
ShowMsg("请选登录!","-1",0,2000);
exit();
}
$rs = $cfg_ml->CheckUser($username,$password);
if($rs==0)
{
ShowMsg("用户名不存在!","-1",0,2000);
exit();
}
else if($rs==-1)
{
ShowMsg("密码错误!","-1",0,2000);
exit();
}
$userid = $cfg_ml->M_ID;
}
改为
复制代码代码如下:
//确认用户登录信息
if($cfg_ml->IsLogin())
{
$userid = $cfg_ml->M_ID;
}
else
{
$username = trim($username);
$password = trim($password);
if(empty($username) || $password)
{
$userid = 0;
}
else
{
$rs = $cfg_ml->CheckUser($username,$password);
if($rs==0)
{
ShowMsg("用户名不存在!","-1",0,2000);
exit();
}
else if($rs==-1)
{
ShowMsg("密码错误!","-1",0,2000);
exit();
}
$userid = $cfg_ml->M_ID;
}
}
修改的意思就是,如果用户没有登录,那我就把0赋值给 id,这样在后台只要看到是0下的订单,就是游客的。经目前测试,没发现问题。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341