dedecms5.7商城系統(tǒng)無需登錄注冊即可下訂單購買的修改方法
辦法1、
修改DEDE本身的訂單程序,DEDE不就是要求注冊會員才可以嗎 ? 簡單 那我現(xiàn)在注冊一個公共會員 寫死在程序中去 就是在用戶名和密碼字段我直接自動寫了值 不就OK了嗎 呵呵,當然如果你想智能一點 如果用戶是會員 則用用戶的會員號 否則就用默認的賬號 也簡單呀 JS唄 !?。?/P>
辦法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;
}
在我這個網(wǎng)站中,這兩個都不能完全解決問題,但是結(jié)合一下兩個人的,正好符合我的要求。第一個人的思路中存在一個問題,就是“如果有人買了東西沒有支付 后來的用戶不是要一起支付了 能看到其它的未支付訂單”,下面有人提出了這個質(zhì)疑,不太理想。第二個人把那段代碼刪除后,那就是把用戶登錄的信息也沒在訂單中關(guān)聯(lián)起來了,所以我們即要游客可以訂單,會員也能購買。如是我作了如下修改:
/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下的訂單,就是游客的。經(jīng)目前測試,沒發(fā)現(xiàn)問題。