帝国cms静态页回复评论后可见隐藏内容、下载地址,将loginjs.php改造成插件,内容页纯静态条件加载动态判断功能(图文)

原创文章,转载请注明出处。

本人纯粹是php体育老师教的,只是爱折腾。

今天研究把 /e/member/login/loginjs.php改造成插件,实现回复后才可以看特定字段,比如下载地址。

而且还可以限制评论后多长时间,下载地址可见。

思路,是借助 document.writeln("go.php");来实现的。

太晚了,代码还比较乱,先贴上来,请大神来帮忙完善。

这里只是小白的思路取胜法。代码真的很烂。
 

效果预览

https://www.wentong.org/free/fiddler-download-cn.html

内容页模板代码

<h3>文件下载:</h3>

<script type="text/javascript">

document.write('<script src="https://www.wentong.org/e/extend/down/?classid=[!--classid--]&id=[!--id--]&d=<?php echo $navinfor[stb] ?>&t='+Math.random()+'"><'+'/script>');

</script>

<noscript><div class="reply-to-read"><i class="far fa-comment-dots"></i> 温馨提示:你很可能禁用了Java scrip,我们无法正常为你服务,真心抱歉!</div></noscript>

/e/extend/down/index.php代码(基本来自官方的loginjs.php文件)

<?php

require("../../class/connect.php");

if(!defined('InEmpireCMS'))

{

exit();

}

eCheckCloseMods('member');//关闭模块

$myuserid=(int)getcvar('mluserid');

$r=array();

$mhavelogin=0;

if($myuserid)

{

include("../../class/db_sql.php");

include("../../member/class/user.php");

$link=db_connect();

$empire=new mysqlquery();

$mhavelogin=1;

//数据

$myusername=RepPostVar(getcvar('mlusername'));

$myrnd=RepPostVar(getcvar('mlrnd'));

$qcklgr=qCheckLoginAuthstr();

if(!$qcklgr['islogin'])

{

EmptyEcmsCookie();

$mhavelogin=0;

}

else

{

$r=$empire->fetch1("select ".eReturnSelectMemberF('userid,username,checked')." from ".eReturnMemberTable()." where ".egetmf('userid')."='$myuserid' and ".egetmf('rnd')."='$myrnd' limit 1");

if(empty($r[userid])||$r[checked]==0)

{

EmptyEcmsCookie();

$mhavelogin=0;

}

}

}

if($mhavelogin==1)

{

$down='';

$id=(int)$_GET['id'];

$classid=(int)$_GET['classid'];

$stb=(int)$_GET['d'];

$r_pl=$empire->fetch1("select userid,classid,id,saytime from {$dbtbpre}enewspl_1 where classid='$classid' and id='$id' and userid='$r[userid]' and saytime>UNIX_TIMESTAMP()-12*3600 order by saytime desc limit 1");

if(empty($r_pl[userid]))

{

$down="<div class=\'reply-to-read\'><p><i class=\'far fa-comment-dots\'></i> ".$myusername." 会员: 你输入用户名 ".$myusername." 和登录密码<a href=\'#respond\' title=\'评论本文\'>「评论本文」</a>,即可获得下载地址(资源有限,地址12小时内有效)。请不要回复无意义内容!</p></div>";

}

else{

$down="<div class=\'reply-to-read\'><p><i class=\'far fa-comment-dots\'></i> ".$myusername." 会员: 你刚刚获得下载地址  <a href=\'https://www.wentong.org/e/extend/down/go2dow.php?classid=".$classid."&id=".$id."&d=".$stb."&g=9\'>/go2dow.php?g=9</a>(12小时内有效,过期请重新评论获取)。请不要回复无意义内容!</p></div>";

}

?>

document.writeln("<?=$down?>");

<?php

db_close();

$empire=null;

}

else

{

?>

document.writeln("<div class=\'reply-to-read\'><p><i class=\'far fa-comment-dots\'></i> 温馨提示: 隐藏内容需要输入「用户名、密码」<a href=\'#respond\' title=\'评论本文\'>「评论本文」</a>后查看。</p><p>未注册的,请<a href=\'/e/member/register/\' title=\'会员注册\'>「注册」</a>。请不要回复无意义内容!</p></div>");

<?php

}

?>

效果预览

https://www.wentong.org/free/fiddler-download-cn.html

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:帝国cms静态页回复评论后可见隐藏内容、下载地址,将loginjs.php改造成插件,内容页纯静态条件加载动态判断功能(图文)