21

织梦网站管理系统禁止会员同一帐号多地登录

修改织梦网站管理系统PHP程序,实现禁止同一会员帐号多地登录,一般来讲就要从判断IP入手。我修改的这个原理是:会员登录后增加创建名为Only的cookie,当会员刷新页或浏览新页面时判断从数据表@_member中当前会员的loginip值md5后与Only比较异同,把此条件加在验证用户是否已经登录函数IsLogin()中,成立返回真,不成立返回假,即可实现。修改如下:

修改文件/include/memberlogin.class.php

构造函数,大约171行左右的$this->OnlyCookie = GetCookie("Only");代码下一行增加代码如下:
$this->OnlyCookie = GetCookie("Only");

验证用户是否已经登录函数IsLogin(),大约第290行 改为
function IsLogin()
{
$loginipCookie = substr(md5($this->fields['loginip']),0,16);
if($this->M_ID > 0 && $this->OnlyCookie == $loginipCookie) return TRUE;
else return FALSE;
}

重置用户信息函数ResetUser()内的最后,大约第389行左右代码DropCookie('DedeLoginTime');的下一行增加代码如下(除管理员外的cookie方法):
DropCookie('Only');
意为重置会员cookie信息

大约第530行左右保存用户cookie的函数PutLoginInfo()内的if($this->M_KeepTime > 0)内增加代码如下(除管理员外的cookie方法);
PutCookie('Only',substr(md5(GetIp()),0,16),$this->M_KeepTime);
意为增加cookie条目
下面的else内最后加上
PutCookie('Only',$this->M_LoginTime);

修改文件/include/userlogin.class.php(这个没有测试管理员的帐号效果,后来我没我修改这条,也就是说这条改不改不影响除ID为1的其他会员的禁止多地登录效果)
keepUser()函数内大约第315行增加代码如下:
PutCookie('Only', substr(md5('MrDede'.GetIp()),0,16), 3600 * 24, '/');
保持用户的会话状态,这里给管理员(id=1)增加了名为Only的cookie信息

25

织梦图集模型增加数据类型为“HTML文本”的自定义字段 发布着色内容出错

织梦二次开发,一是让系统更适合自己,为我所用;二是没有绝对完美的东西,修改它的BUG。

织梦图集模型增加数据类型为“HTML文本”的自定义字段 发布着色内容出错,表面上看是这样的,但实现上是在打开修改图集内容页时的返回值出错,再准确一点说,是HTML文本在修改查看时被过滤了一次而出错(把原来的<span style…替换成了<span x=”">yle…)。

dede_addonimages数据表中是正确的

dede_addonimages数据表中是正确的

20150625035610 20150625035643

因为在发布完图集内容后,我查看数据表dede_addonimages数据内容,是正常并正确的。所以问题就不是出在发布的环节,也没必要研究/dede/album_add.php这个文件了(之前我走了弯路)。

(到这一步之前也走了一些弯路)那么现在就来研究/dede/album_edit.php这个文件,发现是$addRow=XSSClean($addRow);这句在作怪,注释掉,OK!

20150625041905

整个56行$arcRow=XSSClean($arcRow);$addRow=XSSClean($addRow);都可以注释掉。之所以说这行都可以注释掉是因为在文章模型的修改文档文件(/dede/archives_edit.php)中就没有这各方法过滤,根本就没有出现XSSClean()方法。

其它,那个过滤规则最终是指向\include\helpers\filter.helper.php的RemoveXSS方法的,没去细研究。

天亮了,睡了……

21

使用itemindex或autoindex实现织梦频道页、列表页显示文章顺序编号

使用织梦内容管理系统建站,想在频道页或列表面显示文章顺序号、隔行变色、每五行一个小区块儿等等效果,这个功能就要大显伸手了。之前我也总结过一些关于织梦标签的调用方法手册,可以直接做为工具页来直接复制。

列表页使用方法:

织梦列表页隔行换色(可以通过写the和that两类的样式来实现不同背景色):

可以使用在dede:arclist和dede:list下,使用的织梦列表页另一种方法(显示自然顺序标号):

频道页使用方法:

大体意思就是这样,至于加在什么位置,就自己选吧!

织梦默认的搜索页不支持autoindex标签,需要修改核心文件增加支持:

找到文件:include/arc.searchview.class.php

第一处:

第二处:

20

dedeCMS数据库操作类中$dsql的使用方法与实例

dedecms二次开发中对数据库操作类的使用尤为重要,下面是对数据库操作类的一些简单说明和实例。

引入common.inc.php文件

查询某表是否存在,存在返回TRUE,否则返回FALSE

获取一条记录的内容

将查询获取总数输出

将查询的若干条记录输出

将查询的若干条记录输出dedecms5

插入一条记录

经实践证明,上面的语句不能正常插入数据库,下面是正确的语句

删除一条记录

更新一条记录

判断获取数据库内容的常用方法

获取总数

关闭数据库

实例 Continue reading

17

织梦5.7使用图片集模型上传图片弹出框显示302不能上传图片

织梦5.7在栏目使用图片集模型时,后台单张上传或多张同时上传,会出现302,并且上传图片失败。

解决方案:

织梦程序根目录/include/userlogin.class.php
session();的上面增加以下几行即可(如下图):

织梦上传图片弹出302

代码如下,复制粘贴即可:

注意:在编辑代码时使用专业代码工具,不要使用记事本工具,防止出错!

18

个人总结的织梦手册(实用一)

//作者:莪叆啰    整理:织梦先生    QQ:3444056

//织梦的网站查询手册

//红色为问题集  //橄榄色为注释  //紫色为拓展

 

1.网站标题(优化):
{dede:field.title/}_{dede:global.cfg_webname/}

 

2.当前名称:

{dede:field name='typename'/}

 

3.导航条(父类、子类):

 

4.面包屑:

生成的代码为 <a href=”#”>首页</a> > <a href=”#”>新闻动态</a>

函数的位置 include/typelink.class.php
Continue reading

12

忘记织梦管理员密码怎么修改

织梦CMS网站内容管理系统,是国内用户最多的网站程序,可再开发性强,深受广大站长朋友的喜爱。那么我们在初装的时候,由于某些问题或者是莫名的出错,造成织梦后台无法修改管理员密码,总是提示密码不正确。以前我也时不时的会碰到这种问题,现在把修改方法写出来,希望能帮助到个位和我一样喜爱织梦CMS的朋友。

分析:

织梦管理员密码存储表:dede_admin(“dede_”,这是默认表前缀)

织梦管理员密码加密方式:MD5

织梦管理员密码取位方法:MD5(32位小写)后,去掉前去5位,去掉后去7位,取中间20位

修改方法一:

MD5(32位小写)加密“admin”(不含引号)后,得21232f297a57a5a743894a0e4a801fc3,按上面的取位方法,得f297a57a5a743894a0e4

进入数据库,找到dede_admin表,浏览进入,编辑ID为1的条目,修改字段为pwd下的值为f297a57a5a743894a0e4

点击“执行”或“保存”,写成(现在管理员密码即为admin)。

修改方法二:

使用织梦cms后台的SQL语句功能修改管理员密码

织梦后台>>系统>>SQL命令行工具>>运行SQL命令行>>单行命令(支持简单查询)

在表单处输入

点击“确定”,完成(现在管理员密码即为admin)。

注:这只是两个基本的修改管理员密码的方法,具体你想怎么修改,扩展一下思维也是可以的。

09

织梦网站搬家还原数据库后不能正常链接到模板或CSS文件

今天一个朋友由于原来的服务器公司的误操作,造成VPS上网站的数据大量丢失,一气之下找了服务商。

网站搬家后,在织梦后台还原数据,生成首页、栏目和文档,之后显示不正常,结果找我去帮忙。

我看了下源码,显示CSS的链接地址是/templets/default/style/***.css。

检查了一下,系统设置的模板文件夹是zs,是正确的;又看了下“生成”>>首页模板文件,也是正确的。使用动态查看首页,还是不正常。

弄了好一会,后来想起来织梦猫的模板详情页写过一句话,还原数据库后无论模板文件夹输入是否正确,都要重新点击一下确定(不是原话,但大体是这个意思)。

我就把在织梦的系统设置下改了下模板文件名,发现页面链接中显示了我新改的文件名,我又改回原来的zs,结果,正常显示了。

这是亲身经历,让我印象深刻。

在帮别人修改织梦模板或者是织梦后台程序的过程中,也是自己学习和进步的好机会。

总结:无论是在织梦网站搬家后还原数据库,还是新织梦网站还原下载来的带数据库的模板,在出现显示不正常的情况下,首先进入织梦后台,系统>>系统基本参数,查看“模板默认风格”是否正确,不正确的修改为正确的文件夹名,正确的也要点一下“确定”;其次,生成>>更新主页HTML,查看“选择主页模板”的文件夹名和首页模板名,是否正确,还是不正确的修改为正确的,正确的也要点一下“生成HTML”。

注:这种方法只是织梦网站显示不正常的方法之一,网站的不正常显示当然是有着很多的可能性的,这只是其中之一。

如果有相关问题的可以联系本人,一起研究、学习交流。

27

怎样自己制作网页,使用织梦程序搭建网站

随着网络时代的迅猛发展,人们已不只满足于浏览各个网站,除专业网站设计工作人员外,很多网民也已开始制作自己的行业网站与个人博客网站等。

个人制作网站,有的是因为感觉网页制作很神秘,好奇心驱使,为自己的业余生活增添一些满足感,与朋友聊天中,也有一些与众不同的炫耀;有的是接触淘宝客行业后转为网站推广,而接触网站制作,等等的多种原因使用我们玩起了网站。

不管是什么目的,我们已经走到了这里,不管是做为业余爱好还是作为自己的生财之道,那走就要走得踏踏实实。

本人也是自学网页制作等相关知识,没学过也不懂英语,经常写、经常看、经常说,那些html标签、CSS的用法等,自然就记下了。

以前曾在网上看到过一句话,多年来一直记忆犹新:人,可以身无分文,但不可以手无寸铁!

在这里,我们的“寸铁”就把制作网页的工具与HTML+CSS+SQL等知识。

那么,我们怎么自己制作网页?怎么使用织梦程序搭建自己的网站?如下:
1.工具
网页制作工具Adobe Dreamweaver,一般常叫DW。我就是边看视频教程,边用这个工具学起的。
制图工具,Photoshop、Fireworks(Dreamweaver、Fireworks、Flash这三个工具统称为网页三剑客),制图可以不用专门去学,碰到什么问题再到百度上去搜也是可以的。 Continue reading

24

DedeCMS常用SQL语句

在DedeCMS 系统中,我们很多地方需要用到SQL语句,例如批量修改(替换)内容、数据内容调用等,在系统模板中有一个专门用于调用数据的模板标签{dede:sql/}我们可以参考帮助中心的模板标签说明学习下这个标签如何使用。
当然我们在使用SQL语句和学习SQL语句的之前需要对织梦的数据库结构有一个大致的了解,我们可以通过帮助中心的数据库说明,来简单的了解这些内容。

以下为引用的内容:
标签名称:sql功能说明:用于从模板中用一个SQL查询获得其返回内容适用范围:全局使用基本语法:{dede:sql sql=”"}底层模板{/dede:sql}参数说明:sql=”" 完整的SQL查询语句底层模板字段:SQL语句中查出的所有字段都可以用[field:字段名/]来调用
应用实例:
1.调用某个特定会员发布的文章内容

mid为用户ID可以参考二次开发中关于dede_archives的数据表字段介绍

接下来我们收集整理一些常用的SQL语句帮助大家一同更好的使用DedeCMS系统。 Continue reading