dedecms登陆的logophp是怎么传参数的?谢谢大神

dedecms登陆的logophp是怎么传参数的?谢谢大神,第1张

在站长这个圈子里,dedecms 是大家都比较熟识的一个网站程序,dedecms以功能强大和seo友好受到众多站长的青睐。新手站长用这个程序搭建一个站也是很容易的事,但是看着别的网站那么精美的页面,又看看自己使用的默认模板,总有些怅然若失的感觉。其实对于一个新手站长来讲,你也可以通过自己的努力去仿制这个网页作为自己的模板。

理论上对于任何一个网页,dedecms是都可以仿制的,只是复杂程度不同,这里讲的复杂程度其实只是些重复的工作。新手站长只要细心去做,发现并不会太困难,当然一定的知识储备还是需要的。事实上,太多的新手站长是被自己给吓倒了,一说到仿制网页模板,马上就会摇头说我不懂php,不懂css我怎么去仿呀。其实仿站对这个几乎没有要求的,只要我们能看懂html,并且知道dedecms程序是怎么对标签调用的,就可以开始制作了。在制作的过程中,你可能会遇到这样或者那样的问题,这个时候你可是要用好“百度”的,要记住他永远是你最好的老师。

前面讲到dedecms对标签的调用,网上的教程有很多,我们也可以查看帮助文件。也许一下子看到那么多的标签,好多新手站长的头都大了。其实,在我们仿制模板的过程中,真正能用的就那么几个而已,比如:{dede:arclist}获取指定文章列表标签、{dede:channel}获取栏目列表页等。我们只要把常用的几个搞明白了,就可以动手了。每个标签里还会出现一些属性,如这一句调用:{dede:arclist row=’6’},其中的”row”就是标签的一个属性,就是调用多少篇文章的意思,而后面的”6”就是这个属性的值,就是本次调用6篇文章。属性基本上是见名而知义的。

千万不要等到把所有的标签都搞得滚瓜烂熟再动手去仿制,这种上手的方法不是说不好,而是太慢了。最快的学习过程就是动手去做,做的过程中你会遇到各种问题,而通过努力不断的解决掉问题的过程,就是你最好、最实效的学习过程。你第一次仿制模板时可能要用5天,当你第二次的时候也许只要3天,这样连续找几个不太复杂的站进行仿制练习,你会感慨“原来仿站不过如此而已”。

仿制模板最快速上手的方法是对比着仿。对比着仿就是对比着dedecms的默认模板来仿,比如我们要仿制的网站首页的title/title之间显示的是这个网站的标题,而默认模板里在这对标签之间是{dede:globalcfg_webname/},我们只要把这个标签内容复制过去,把原来的内容覆盖掉就可以了,甚至不用知道这个标签是什么意思。只要是功能相同的地方我们都可以采用这种只动鼠标就可以解决的方法。

仿制模板最应该关注的是两个问题:其一是素材路径的问题,我们下载的网页路径都是正常的,但当我们把网页放入我们网站目录时可能会产生调用异常,因为路径的改变可能导致无法读取到一些样式和素材。这个时候我们就要对路径进行修改,建议使用以网站根目录为起始路径的绝对路径,即形如”/templets/default/style/dedecmscss”这样的路径;其二是编码问题,一定要做到仿制好的模板的编码和你所安装的dedecms的编码一致,要不然,生成的网页是一片乱码。解决这个问题使用编码转换软件或者一些工具网站提供编码转换工具就可以了。

仿制网页模板不像我们相像中那么难,只要花点时间学习一下,很容易上手的,关键是思想上不能被吓倒。仿制网页模板不是太大的技术活,很多时候更像是体力活。一般情况投入10天的时间,就会让你以后的模板无忧的。

楼主你好

后台->系统->系统设置->系统基本参数->模板默认风格:在这里填写你的模板名称就行,但必须是你把模板放在templets下。如下图:

另外,在生成首页的时候,那里有个浏览,那里选择一下模板首页就可以了。

希望可以帮到你。

楼主你好

你上面的logophp应该是写错了,dedecms有三个登录处理程序文件,前台的有 index_dophp 和 loginphp,不过l oginphp 没有处理数据,仅判断是否登录,登录的话跳转到会员中心首页。后台的有 loginphp 来处理。下面详细说明:

前台 index_dophp 文件。首先不论用户是在网站首页右侧的登录框登录还是会员中心的登录页面登录,两者都会把参数传到  /member/index_dophp 文件中,从登录模板的 action 中我们可以看到登录的时候会把表单数据传递到哪个文件来处理。如下图:

上图是位于/member/templets/loginhtm文件中的部分截图,这是我们前台登录的模板页面,可以看到<form>中将参数传给了index_dophp文件,具体传的参数是每个表单(input)的name值,比如用户名的表单是<input id="txtUsername" class="text login_from" type="text" name="userid"/> ,通过对name的判断知道这个表单提交的是用户名,也就是userid的值,数据库会有对应的userid的字段。比如你登录的用户名是:林羽凡,传过去(到index_dophp)的值就是“userid='林羽凡'”。

type="hidden"的是隐藏域,也就是不在页面上显示,但系统仍能传递参数。比如<input type="hidden" name="fmdo" value="login">就是传递 fmdo的值是 login,这样index_dophp就会知道这里传来的值是用于登录处理的,会有对应的函数(funtion)来处理。

dedecms的$dopost很诡异,通过这个参数的值判断是登入还是登出。

通过以上,我们还有一个登录按钮,类型是submit,也就是提交,这样表单form中的所有信息才会传递到index_dophp文件。

在/member/index_dophp文件240行就可以看到function login()了,也就是登录处理函数,这个时候这个函数就会把传递过来的参数统统接收,这里也是最容易进行sql注入的地方,如果对表单过滤不好,很容易把sql语句写到处理文件中,这里就不细说了。

index_dophp的大概处理过程是这样的,可参考下,不一定每一条都说到。

1、判断是否设置验证码,如果没有,进行用户名验证,如果有设置看对不对,不对的话提示跳转到indexphp文件,如果对,就进行用户名验证。

2、if(CheckUserID($userid,'',false)!='ok')就是通过CheckUserID()来检查用户是否合法,主要是指是不是系统禁用名,是不是长度不够等等,具体语法就不解释了。

3、看你密码是不是空的。

4、接下来就是最重要的,看你的用户名和密码匹配不匹配。$rs = $cfg_ml->CheckUser($userid,$pwd);  dedecms这里的验证有点繁琐,还加入了UC机制,就不详细说了。

总结下:说得有点啰嗦,但希望楼主能明白大概的流程,后台的登录传参原理也一样,也是通过<input>把值传到 loginphp 文件,再有对应的函数处理。我们通过传参都会用post方法,也就是你在代码中看到的 method='POST',还有一种是 Get 方式,两种有区别,主要是 post 可传的字节比 get多。

希望可以帮到你。  林羽凡

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms登陆的logophp是怎么传参数的?谢谢大神

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情