DEDECMS文章模型整合下载功能可判断点数会员组等下载权限_第1页
DEDECMS文章模型整合下载功能可判断点数会员组等下载权限_第2页
DEDECMS文章模型整合下载功能可判断点数会员组等下载权限_第3页
DEDECMS文章模型整合下载功能可判断点数会员组等下载权限_第4页
DEDECMS文章模型整合下载功能可判断点数会员组等下载权限_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DEDECMS文章模型整合下载功能,可判断点数,会员组等下载权限

本教程实现DEDECMS功能:文章模型整合下载功能,可判断点数,会员组等下载权限,前台可判断是否有附件下载,有那么显示,没有那么不显示。适用类型:有些文章有下载地址,有些文章没有下载地址的网站。想附件收费的网站等等……具体就不啰嗦了。用得上您就拿走。

DEDECMS文章模型整合下载功能,可判断点数,会员组等下载权限

()

后台效果图

本教程为站长似水星辰原创,转载注明出处。

注:本教程中的金币和会员组设置只针对下载连接有效。不对文章内容生效,和文章本身的阅读权限和消费金币并不冲突,是分开设置的。文章中所有sql语句中波及表名的,请把表前缀换成您自己的表前缀。如:js_addonarticle换成您的表前缀_addonarticle。

一、首先规划要参加的字段

下载链接:softlinks

消费金币:needmoney

会员组权限:daccess

这些字段要参加到文章附加表中,前缀_addonarticle,也可以根据自己情况参加需要的表中,自己修改就行了。

进入后台系统-SQL命令行工具,执行:

1

ALTERTABLE

`js_addonarticle`ADD

`softlinks`TEXTNOTNULL,

2

ADD

`needmoney`SMALLINT(5)NOTNULL,

3

ADD

`daccess`SMALLINT(5)NOTNULL

也可以在phpmyadmin中自行添加。

然后在后台翻开核心-频道模型-内容模型管理-普通文章-修改-字段管理,在模型字段配置(文本模式)里添加

如果不添加那么会出现无链接信息错误!请务必添加。

二、数据库字段添加完毕就要修改文章模型的4个文件了。分别是dede管理目录下的article_add.php,article_edit.php和管理模板article_add.htm,article_edit.htm,翻开这4个文件依次修改。

1、修改article_add.htm,在头部的中参加下列,在之前参加就行

01

varstartNum=0;

02

functionMakeUpload()

03

{

04

varupfield=document.getElementById("uploadfield");

05

varendNum=

parseInt(document.form1.picnum.value)+startNum-1;

06

if(endNum>30)endNum=30;

07

for(startNum;startNum08

upfield.innerHTML+="软件地址"+startNum+":

效劳器名称:\r\n";

09

}

10

}

11

functionShowHideAddr()

12

{

13

document.getElementById('morelink').style.display=(document.getElementById('morelink').style.display=='block'《'none':'block');

14

document.getElementById('morelink').style.height='100%';

15

document.getElementById('btsh3').value=(document.getElementById('morelink').style.display=='block'《'隐藏地址':'显示地址');

16

}

这个是可以增加下载地址个数的JS代码。

2、找到

再其后边参加

001

002

下载限制:

003

004

005

006

007

008

需会员权限:

009

010

011

012

$dsql->SetQuery("Select*from`js_arcrank`whererank>=0");

013

$dsql->Execute();

014

while($row=$dsql->GetArray())

015

{

016

if($row['rank']==0)$row['membername']="不限会员";

017

if($row['rank']==$softconfig['dfrank'])echo"

{$row['membername']}\r\n";

018

elseecho"

{$row['membername']}\r\n";

019

}

020

《>

021

022

需消费金币:

023

024

"size="8"/>个

025

026

027

〔如果设定了下载限制,[软件频道设置]中“附件下载方式:〞必须选择“链接到跳转页面〞〕

028

029

030

031

032

033

本地软件选择:

034

035

036

037

038

039

本地地址:

040

041

042

043

效劳器名称:

044

045

046

047

048

049

050

051

if($softconfig['moresitedo']==0&&trim($softconfig['sites'])!='')

052

{

053

《>

054

055

预设的镜像效劳器:

056

057

058

059

(效劳器地址+软件地址=软件真实地址[软件频道设置])

060

061

$sites=explode("\n",$softconfig['sites']);

062

$startNum=2;

063

foreach($sitesas$site)

064

{

065

$site=trim($site);

066

if(empty($site))continue;

067

list($siteurl,$sitename)=explode('|',$site);

068

$siteurl=trim($siteurl);

069

$sitename=trim($sitename);

070

《>

071

072

'value='1'/>

073

'style='width:200px'value=''/>+

074

'style='width:120px'value=''/>

075

'style='width:150px'value=''/>

076

'class='np'value='1'checked/>启用

077

078

079

$startNum++;

080

}//foreach

081

echo"startNum=$startNum;\r\n";

082

《>

083

084

085

086

}//需要预设镜像

087

《>

088

089

手动指定地址:

090

091

092

093

094

095

其它地址:

096

097

098

099

100

101

(最多为30个链接)

102

103

104

105

106

107

108

109

到这里article_add.htm文件就修改完了。

3、翻开article_edit.htm文件,在头部的中参加下列代码,在之前参加就行

01

varstartNum=;

02

functionMakeUpload()

03

{

04

varupfield=document.getElementById('uploadfield');

05

varendNum=

parseInt(document.form1.picnum.value)+startNum;

06

if(endNum>30)endNum=30;

07

for(startNum;startNum08

{

09

upfield.innerHTML+="软件地址"+startNum+":

效劳器名称:\r\n";

10

}

11

}

12

13

functionShowHideAddr()

14

{

15

document.getElementById('morelink').style.display=(document.getElementById('morelink').style.display=='block'《'none':'block');

16

document.getElementById('btsh3').value=(document.getElementById('morelink').style.display=='block'《'隐藏地址':'显示地址');

17

}

4、找到

PrintAutoFieldsEdit($cInfos['fieldset'],$addRow,'autofield');

《>

在其下边参加下列代码:

01

02

03

04

05

需会员权限:

06

07

08

09

$dsql->SetQuery("Select*from`js_arcrank`whererank>=0");

10

$dsql->Execute();

11

while($row=$dsql->GetArray())

12

{

13

if($row['rank']==0)$row['membername']="不限会员";

14

if($row['rank']==$daccess)echo"

{$row['membername']}\r\n";

15

elseecho"

{$row['membername']}\r\n";

16

}

17

《>

18

19

20

需消费金币:

21

22

"size="8"/>个

23

24

25

26

〔如果设定了下载限制,软件频道设置中“附件下载方式:〞必须选择“链接到跳转页面〞〕

27

28

29

30

31

32

软件链接列表:

33

34

35

36

37

38

其它地址:

39

40

41

42

43

44

(最多为30个链接)

45

46

47

48

49

50

51

52

53

echo$nForm;

54

《>

55

56

57

58

59

article_edit.html修改完毕,接下来开始修改article_add.php,要认真看哦!

5、翻开article_add.php,找到

01

//保留到附加表

02

$cts=$dsql->GetOne("SELECTaddtableFROM`js_channeltype`WHEREid='$channelid'");

03

在其上边参加

04

//软件链接列表

05

$urls='';

06

07

//本地链接处理

08

$softurl1=stripslashes($softurl1);

09

$nsoftsize='';

10

if($softurl1!='')

11

{

12

$urls.="{dede:linkislocal='1'text='{$servermsg1}'}$softurl1{/dede:link}\r\n";

13

}

14

15

//其它链接处理

16

for($i=2;$i17

{

18

if(!(${'softurl'.$i}))

19

{

20

$forconfig=(${'forconfig'.$i})《FALSE:TRUE;

21

if($forconfig)

22

{

23

if(empty(${'need'.$i}))continue;

24

$serverUrl=stripslashes(${'softurlfirst'.$i});

25

$serverUrl=preg_replace("#\/$#","",$serverUrl);

26

$softurl=stripslashes(${'softurl'.$i});

27

if(cn_substr($softurl,1)!='/')$softurl='/'.$softurl;

28

$softurl=$serverUrl.$softurl;

29

}

30

else

31

{

32

$softurl=stripslashes(${'softurl'.$i});

33

}

34

$servermsg=str_replace("'","",stripslashes(${'servermsg'.$i}));

35

if($servermsg=='')$servermsg='下载地址'.$i;

36

if($softurl!='')

37

{

38

$urls.="{dede:linktext='$servermsg'}$softurl{/dede:link}\r\n";

39

}

40

}

41

}

42

$urls=addslashes($urls);

这段大略在203行左右,主要作用是处理下载地址。然后再找到

$query="INSERTINTO`{$addtable}`(aid,typeid,redirecturl,templet,userip,body{$inadd_f})Values('$arcID','$typeid','$redirecturl','$templet','$useip','$body'{$inadd_v})";

替换为

$query="INSERTINTO`{$addtable}`(aid,typeid,redirecturl,templet,userip,body,softlinks,needmoney,daccess{$inadd_f})Values('$arcID','$typeid','$redirecturl','$templet','$useip','$body','$urls','$needmoney','$daccess'{$inadd_v})";

article_add.php修改完毕,添加一下文章,把下载地址,金币,会员组都写进去,看看数据库是不是有这条记录了^^。

6、翻开article_edit.php,找到

$channelid=$arcRow['channel'];

在其上边参加

01

$newRowStart=1;

02

$nForm='';

03

$daccess=$addRow['daccess'];

04

$needmoney=$addRow['needmoney'];

05

if($addRow['softlinks']!='')

06

{

07

$dtp=newDedeTagParse();

08

$dtp->LoadSource($addRow['softlinks']);

09

if(is_array($dtp->CTags))

10

{

11

foreach($dtp->CTagsas$ctag)

12

{

13

if($ctag->GetName()=='link')

14

{

15

$islocal=$ctag->GetAtt('islocal');

16

if($islocal!=1)$needmsg="删除";

17

else$needmsg='';

18

$nForm.="软件地址{$newRowStart}:GetInnerText())."'/>

19

效劳器名称:GetAtt("text")."'style='width:150px'/>

20

21

$needmsg

22

\r\n";

23

$newRowStart++;

24

}

25

}

26

}

27

$dtp->Clear();

28

}

找到

$cts=$dsql->GetOne("SELECTaddtableFROM`js_channeltype`WHEREid='$channelid'");

在其上边参加下列代码:

//软件链接列表

$urls='';

for($i=1;$i

{

if(!empty(${'softurl'.$i}))

{

$islocal=empty(${'islocal'.$i})《'':1;

$isneed=empty(${'del'.$i})《true:false;

$servermsg=str_replace("'",'',stripslashes(${'servermsg'.$i}));

$softurl=stripslashes(${'softurl'.$i});

if($servermsg=='')

{

$servermsg='下载地址'.$i;

}

if($softurl!='')

{

if($islocal==1)$urls.="{dede:linkislocal='$isloc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论