dedecms

关注公众号 jb51net

关闭
CMS教程 > dedecms >

dedecms 5.1 游客匿名投稿实现方法

jb51

dede5.1游客匿名投稿 上传附件 去登陆验证码 很简单 分享方法。
先找到这三个文件
/member/article_add.php

/member/article_add_action.php

/member/archives_addcheck.php

1、把前两个文件里面的

Quote:
注释掉
//CheckRank(0,0);

2.、把/member/article_add_action.php里的

Quote:
注释掉
//if($cInfos['sendrank'] > $cfg_ml->M_Type){
//$row = $dsql->GetOne("Select membername From dede_arcrank where rank='".$cInfos['sendran/k']."' ");
//$dsql->Close();
//ShowMsg("对不起,需要[".$row['membername']."]才能在这个频道发布文档!","-1","0",5000);
//exit();
//}

一上的是以前大家都知道的。
3、最后/member/archives_addcheck.php文件中 还有个等级验证

Quote:
注释掉
//if($cInfos['sendrank'] > $cfg_ml->M_Type){
//$row = $dsql->GetOne("Select membername From dede_arcrank where rank='".$cInfos['sendrank']."' ");
//$dsql->Close();
//ShowMsg("对不起,需要 [".$row['membername']."] 才能在这个频道发布文档!","-1","0",5000);
//exit();
//}

ok,游客可以投稿了。

游客上传附件 首先修改
[ post]
1
include/dialoguser/config.php
//检验用户登录状态

Quote:
$cfg_ml = new MemberLogin();
/*if(!$cfg_ml->IsLogin())
{
    $gurl = $cfg_memberurl."/login.php?gourl=".urlencode($dedeNowurl);
    echo "<script language='javascript'>location='$gurl';</script>";
    exit();
}
*/

2
include/inc_memberlogin.php

Quote:
/*function CheckUserSpace($uid){
    global $cfg_mb_max,$dsql;
    if(!is_object($dsql)) $dsql = new DedeSql(false);
    $hasuse = GetUserSpace($uid,$dsql);
    $maxSize = $cfg_mb_max * 1024 * 1024;
    if($hasuse >= $maxSize){
        $dsql->Close();
        ShowMsg('你的空间已满,不允许上传新文件!','-1');
        exit();
    }
}
*/

3
include/FCKeditor/editor/dialog/imageuser.php

Quote:
/*CheckUserSpace($cfg_ml->M_ID);*/

Quote:
/*$savepath = $cfg_user_dir."/".$cfg_ml->M_ID;*/
[/post]

辛苦找了2小时的文件才搞定的



发现很多人用dedecms做的网站,都需要游客投稿功能,而官方也没有进行说明。整理了一下,把实现游客投稿的修改方式告诉大家,请跟着操作即可
  
  步骤一:打开MEMBER目录,找到article_add.php、article_add_action.php和archives_addcheck.php这三个文件
  
  步骤二:在article_add.php和article_add_action.php中找到
  
  CheckRank(0,0);
  
  并修改成(在第三行)
  
  //CheckRank(0,0);
  
  步骤三:在article_add.php找到下面的代码,官方文件在14~19行之间

注释掉
  
  //if($cInfos['sendrank'] > $cfg_ml->M_Type){
  
  //$row = $dsql->GetOne("Select membername From `dede_arcrank` where rank='".$cInfos['sendrank']."' ");
  
  //$dsql->Close();
  
  //ShowMsg("对不起,需要[".$row['membername']."]才能在这个频道发布文档!","-1","0",5000);
  
  //exit();
  
  //}
  
  
  步骤四:在archives_addcheck.php找到下面的代码,官方文件在47~52行之间
  注释掉

 //if($cInfos['sendrank'] > $cfg_ml->M_Type){
  
  //$row = $dsql->GetOne("Select membername From dede_arcrank where rank='".$cInfos['sendrank']."' ");
  
  //$dsql->Close();
  
  //ShowMsg("对不起,需要 [".$row['membername']."] 才能在这个频道发布文档!","-1","0",5000);
  
  //exit();
  
  //}
完成了。
下面是网上的另一种方法,大家可以参考下
这个方法相当简单,只用屏蔽掉几行代码就可以了。。。
先找到这三个文件
/member/article_add.php
/member/article_add_action.php
/member/archives_addcheck.php
1、把前两个文件里面的
注释掉
//CheckRank(0,0);
2.、把/member/article_add_action.php里的(感谢straw指出错误,以前写错了。)
注释掉
//if($cInfos['sendrank'] > $cfg_ml->M_Type){
//$row = $dsql->GetOne("Select membername From dede_arcrank where rank='".$cInfos['sendran/k']."' ");
//$dsql->Close();
//ShowMsg("对不起,需要[".$row['membername']."]才能在这个频道发布文档!","-1","0",5000);
//exit();
//}
一上的是以前大家都知道的。
3、最后/member/archives_addcheck.php文件中 还有个等级验证
注释掉
//if($cInfos['sendrank'] > $cfg_ml->M_Type){
//$row = $dsql->GetOne("Select membername From dede_arcrank where rank='".$cInfos['sendrank']."' ");
//$dsql->Close();
//ShowMsg("对不起,需要 [".$row['membername']."] 才能在这个频道发布文档!","-1","0",5000);
//exit();
//}
ok,游客可以投稿了。