dedecms我已经后台把会员开启了,但是首页没有登入框
一经常检查网站数据
一般被挂马的网站大部分是长期无人管理维护的网站,尤其是一些企业网站,包括前文提到的我的2个被挂马的网站就是由于一些原因长期没有管理维护的原因,后来是域名要到期了续费之后顺便检查下了网站就发现被挂黑链了。目前黑链市场依然还很火爆,所以尽量定期抽出时间检查下你不常更新的网站。
二dedecms系统漏洞
由于dedecms的流行,用dedecms仿站成了被黑客攻击的目标之一,从dedecms51到现在的57,依然有部分漏洞,用dedecms做的网站要注意以下几点,
1修改默认后台(dede)路径
2删除install安装目录
3如果不需要使用会员可以直接删除member目录
大部分黑客入侵dedecms网站就是利用会员投稿功能,上传木马文件。
三禁止重要文件和目录被执行、写入
dedecms系统网站可以做如下设置
1以下目录:data、templets、uploads、a设置可读写不可执行权限。
2以下目录:include、member、plus、dede设置为可读可执行不可写入权限。
目前很多使用discuz和phpwind制作的网站也被入侵就是由于重要目录和文件权限没有设置好。
四网站被入侵以后如何处理
1用备份文件覆盖
2没有备份的话,找出最近被修改的文件,查看这些文件是否包含恶意代码。
3找出网站程序多出的文件,重点注意网站根目录是否有未知文件。
五ftp和服务器安全设置
建议使用linux服务器,ftp和服务器用户名和密码要设置复杂点,尽量用字母+数字+特殊符号,使用独立服务器或者vps的要详细了解服务器安全配置方面的教程,确保服务器安全。
参数不对是因为你这个模型缺少参数, 仔细看一下 哪些隐藏的表单 type="hidden" 如果你缺少这里里面的动态参数就无法提交过去。 因为可以参考default里面的模板代码。 还有自定义模型的代码不需要自己写 有固定的调用方法的。 如果你觉得自己写比较好的话可以考虑default生成的原始代码看一下。这样你可以相互参考 就知道缺少什么参数了。
织梦默认的模板不是有这个登陆的东西,你把代码复制过来,然后样式自己需要什么样修改就行了。
<form name="userlogin" action="{dede:globalcfg_memberurl/}/index_dophp" method="POST"><input type="hidden" name="fmdo" value="login" />
<input type="hidden" name="dopost" value="login" />
<input type="hidden" name="keeptime" value="604800" />
<div class="fb"><span>用户名:</span>
<input type="text" name="userid" size="20" class="ipt-txt" />
</div>
<div class="fb"><span>密码:</span>
<input type="password" name="pwd" size="20" class="ipt-txt" />
</div>
{dede:php}
if(preg_match("#2#", $safe_gdopen))
{
echo '
<div class="fb"><span>验证码:</span>
<input type="text" name="vdcode" size="8" class="ipt-txt" />
<img id="vdimgck" align="absmiddle" onClick="thissrc=thissrc+\'\'" style="cursor:pointer;margin-left:0px;text-transform:uppercase;" alt="看不清?点击更换" src="'$cfg_cmspath'/include/vdimgckphp"/></div>
';
}
{/dede:php}
<div class="submit">
<button type="submit" class="btn-1">登录</button>
<a href="{dede:globalcfg_memberurl/}/index_dophpfmdo=user&dopost=regnew" >注册帐号</a> <a href="{dede:globalcfg_memberurl/}/resetpasswordphp">忘记密码</a> </div>
</form>
我们可以用传递参数加SQL实现,具体方法如下: 1、在内容页head之间加上JS:
<script src="{dede:globalcfg_cmsurl/}/include/dedeajax2js" type="text/javascript" ></script>
<script language="javascript">
function CheckLogin_c(){
var taget_obj = documentgetElementById('_userlogin_c');
var req = documentgetElementById('hid')value;
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajaxSendGet2("{dede:globalcfg_cmspath/}/member/ajax_loginsta_cphpval="+req);
DedeXHTTP = null;
}
</script> 2、在内容页需要会员限制才能查看的地方添加代码(会员登录前的样子):
<span id="_userlogin_c"><a href="/member/index_dophpfmdo=user&dopost=regnew">请注册后查看!</a></span>
<input type="hidden" value="{dede:fieldaid/}" id="hid" />
<script language="javascript" type="text/javascript">CheckLogin_c();</script>
这里获取文章ID的文本框一定要在js之前 3、在/member文件夹中新建一个文件:ajax_loginsta_cphp,添加如下代码(会员登录后的样子):
<php
require_once(dirname(__FILE__)"/configphp");
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
$row = $dsql->GetOne(" Select From `js_addoninfos` where `aid`=$val ");
>
<php echo $row['tel']; > 经本人测试,没有任何问题!参考网站: http://wwwjisuxcom/science/dedecms/2011/221html
dedecms页面如何获取会员状态的实例代码
前几天做了一个企业网站,导航栏增加了会员信息,如:
已登陆:显示:欢迎 未登陆 显示: 请登录
代码如下:
代码如下:
{dede:php}
require_once(DEDEMEMBER"/configphp");
$uid = $cfg_ml->M_LoginID;
if(!$uid){
echo '
登录 |加入
';
}else{
echo '
'$uid' |/index_dophpfmdo=login&dopost=exit">登出
';
}
{/dede:php}
具体方法如下:
1、DedeCMS默认风格里,顶部左边有一段话"织梦CMS - 轻松建站从此开始!",很多朋友想把这段话修改成一个横向登录框,像织梦吧(dedecms8com)顶部一样。
2、打开头部公用模板文件templets/default/headhtm,找到如下汉字:
3、把上图里汉字,替换为如下代码:
<div id="_userlogin">
<form name="userlogin" action="{dede:globalcfg_memberurl/}/index_dophp" method="POST">
<input type="hidden" name="dopost" value="login" />
<span>用户名:</span>
<input type="text" name="userid" size="10" class="ipt-txt" />
<span>密码:</span>
<input type="密码" name="pwd" size="10" class="ipt-txt" />
{dede:php}
if(preg_match("#2#", $safe_gdopen)){
echo '
<span>验证码:</span>
<input type="text" name="vdcode" size="8" class="ipt-txt" />
<img id="vdimgck" align="absmiddle" style="cursor:pointer;margin-left:0px;text-transform:uppercase;" alt="看不清?点击更换" src="'$cfg_cmspath'/include/vdimgckphp"/>';}
{/dede:php}
<button type="submit" class="btn-1">登录</button>
<a href="{dede:globalcfg_memberurl/}/index_dophpfmdo=user&dopost=regnew" >注册账号</a> <a href="{dede:globalcfg_memberurl/}/reset密码php">忘记密码</a>
</form>
</div>
<script language="javascript" type="text/javascript">CheckLogin();</script>
改后:
4、其实仅仅这段代码还不够,还需要完成下一步才能达到效果:
那么,我这里为什么没有加这段代码呢这是因为默认主页模板文件indexhtm里,已经包涵了这段代码。如果没有,或被自己删除了,请添加在indexhtm里之前。
打开member/ajax_loginstaphp文件,找到如下代码
5、上图红色框内的代码,即为登录成功后,返回用户信息。多数时候,我们的顶部导航没太宽的地方,以显示这些数据,所有完全没必要全部返回这些信息,可以适当减少几项,并且对div做美化,以达到美观体验。这里,简单做下调整,如下:
6、更新生成后,可以看到如下效果:
这样一个顶部横向登录框就制作完了。
0条评论