DEDE限制某个字段只有会员才能浏览

来源:互联网 发布:淘宝举报漏洞有奖励吗 编辑:程序博客网 时间:2024/04/26 06:54
我在某模型里面增加了一个电话号码的字段tel,希望前台只让具有高级会员权限并且登录的用户才会显示,未登录时显示“请注册后才能显示”。这里用传递参数加SQL实现,具体方法如下:


1、在内容页head之间加上JS:
<script src="{dede:global.cfg_cmsurl/}/include/dedeajax2.js" type="text/javascript" ></script>
<script language="javascript">
function CheckLogin_c(){
 var taget_obj = document.getElementByIdx_x_x(这个地方的_x删掉不知道为什么新删不掉)('_userlogin_c');
 var req = document.getElementByIdx_x_x(这个地方的_x删掉)('hid').value;
 myajax = new DedeAjax(taget_obj,false,false,'','','');
 myajax.SendGet2("{dede:global.cfg_cmspath/}/member/ajax_loginsta_c.php?val="+req);
 DedeXHTTP = null;
}
</script>


2、在内容页需要会员限制才能查看的地方添加代码(会员登录前的样子):
<span id="_userlogin_c">(注意红色这两个id 是要一样的)<a href="/member/index_do.php?fmdo=user&dopost=regnew">请注册后查看!</a></span>
<input type="hidden" value="{dede:field.aid/}" id="hid" />
<script language="javascript" type="text/javascript">CheckLogin_c();</script>
这里获取文章ID的文本框一定要在js之前


3、在/member文件夹中新建一个文件:ajax_loginsta_c.php(这个文件织梦本来就有差不多的,复制一下就好了),添加如下代码(会员登录后的样子):
<?php
require_once(dirname(__FILE__)."/config.php");
AjaxHead();
if($myurl == '')
{
 exit('');
}
$uid  = $cfg_ml->M_LoginID;


!$cfg_ml->fields['face'] && $face = ($cfg_ml->fields['sex'] == '女')? 'dfgirl' : 'dfboy';
$facepic = empty($face)? $cfg_ml->fields['face'] : $GLOBALS['cfg_memberurl'].'/templets/images/'.$face.'.png';


?>(这串代码也是织梦本来就有的)
<?php
$rank=$cfg_ml->M_Rank;
$row = $dsql->GetOne(" Select * From `my_addonshop` where `aid`=$val ");
?>
<?php  echo $row['trueprice'];?>
(上面这些紫色的代码前面加一个判断就可以了很简单的)


总的来说这个ajax功能dede本来就有的,就是首页会员登录的那个地方,自己看下,修改下,不会的q我,或者百度提问下 我会解答的
0 0
原创粉丝点击