Discuz   发布时间:2022-05-06  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了授人以鱼不如授人以渔,UCHome全面大解析培训【第二集】大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

第一集:授人以鱼不如授人以渔,UCHome全面大解析培训活动开展一继  授人以鱼不如授人以渔,UCHome全面大解析培训活动开展一之后,许多用户反应希望能从简单的开始,因此此系列活动进行相应的修改。本期主要介绍UCHOME的体系结构开始,一步一步教大家理解UCHOME。UCHOME安装后的主要目录与文件介绍:admin/      管理后台api/      API函数[插件开发与模板等的修改不需要动此文件]attachment/ 附件目录data/   缓存目录,此目录要有777权限,系统相关缓存基本上都在这里了   data/tpl_cache/ 模板缓存目录,注意,如果你的UCH白屏了,无法进入后台跟新缓存,通过FTP手工删除此目录下的所有文件即可相当于模板缓存的更新image/  图片目录language/   语言目录 ,跳转提示语言等source/  PHP源程序目录template/  模板目录theme/ 个人主页目录uc_client/ ucenter客户端 [插件开发与模板等的修改不需要动此文件]以下是UCHOME根目录下常用文件【不常用的不在介绍】admincp.php  后台管理入口文件common.php  通用文件,所有的文件都要包含这个文件,在上篇已详细解释了内容config.php  基本配置文件cp.php     编辑日志、相册、活动等等相关编辑操作基本上都从这个文件入口do.php   登录、注册、找回密码、相册批量上传、在需要密码的情况下才能查看日志相册、验证码、发送邮件、统计、邮件验证等行为的入口文件editor.php  编辑器的入口文件,强烈建议您不用动他magic.php  道具入口文件network.php便看看等入口文件space.php   个人空间、日志、相册、活动等入口文件我们一般修改UCH主要涉及的入口文件有space.php  network.php  do.php  cp.php 这四个,那么我们如何根据你访问的URL判断涉及到那些php文件和模板文件,方便您的进一步修改!好了,现在我们以最简单的do.php入口文件来分析下,举个列子,如果我们使用找回密码功能,通常链接如下:do.php?ac=lostpasswd,而注册的链接一般分两种,一种是do.php?ac=后台自定义登录识别名另一种是do.php?ac=随机好了,我们进入do.php文件中继续看看代码 1 include_once('./common.php'); //上节说了,这个是公用文件,在上篇已详细解释了内容 2  3 //获取方法 4 $ac = empty($_GET['ac'])?'':$_GET['ac']; //获取do.php?ac中ac的值 5  6 //自定义登录 7 if($ac == $_SCONFIG['login_action']) { 8 //这里的全局变量$_SCONFIG['login_action']就是ac=自定义标示名或那个随机串,如果相同则把原来的do.php?ac=XXXX抓换成类似效果do.php?ac=login 9     $ac = 'login';10 } elseif($ac == 'login') {11     $ac = '';12 }13 if($ac == $_SCONFIG['Register_action']) {14 //这里的全局变量$_SCONFIG['Register_action']15 //就是ac=就是后面的自定义标示名或那个随机串,如果相同则把原来的do.php?ac=XXXX抓换成类似效果do.php?ac=register16     $ac = 'Register';17 } elseif($ac == 'Register') {18     $ac = '';19 }20 21 //允许的方法22 //这里很重要,login对应的是登录,register定义的是注册,lostpasswd定义的是找回密码,与上面访问的URL是否是对应上了23 //对应上面的do.php?ac=login,do.php?ac=register,do.php?ac=lostpasswd,其他类似!如果ac后的参数不在下面的数组中,则为非法。跳转到首页24 $acs = array('login', 'Register', 'lostpasswd', 'swfupload', 'inputpwd',25     'ajax', 'seccode', 'sendmail', 'stat', 'emailcheck');26 if(empty($aC) || !in_array($ac, $acs)) {27     showmessage('enter_the_space', 'index.php', 0);28 }29 30 //链接31 $theurl = 'do.php?ac='.$ac;32 //这是包含文件的意思,继续执行一下文件的意思,33 //其中S_ROOT是UCHOME安装目录的常量34 //根据下面的语句,我们可以这样判断,如果链接是do.php?ac=lostpasswd的话,程序继续执行source/do_lostpasswd.php文件!35 include_once(S_ROOT.'./source/do_'.$ac.'.php');不知道大家是否能理解,不理解多看几遍!好了,我们找到source/do_lostpasswd.php文件看下,这个文件代码较多,我们不用管他,最主要的是我们要找到其对应的模板,查找下include template这个语句【注:在其他php文件中可能有多个结果,那是因为不同条件下包含不同的模板】。你@R_752_10585@在末尾找到include template('do_lostpasswd');这就是模板名,这个记住规则,do_lostpasswd对应的模板是do_lostpasswd.htm名。那么这个文件在哪个位置呢?我们系统目录template/下有 默认的default,blue,green这三个文件夹,对应不同的风格,如果你安装了其他风格,可能还有其他目录。系统是如何查找do_lostpasswd.htm呢?大家记得在后台有一个模板选择的下拉表吗?系统会在你选择的模板风格文件夹下查找do_lostpasswd.htm,如果找不到则在去default目录下查找。注意: 为了提供效率,模板并不是每次都编译的,严格的来说,UCHOME会先判断对应的模板是否被解析过了【查找data/tpl_cache/目录下是否有对应的模板缓存】如果没有的话才会去按上面的规则去查找。基本上,按照以上思路就可以根据链接找到匹配的程序文件和模板文件了下节我们将会介绍几个制作模板中实用的诀窍及模板的解析原理。如如何修改程序让UCHOME每次都重新解析模板,而不生成缓存!

第一集:<a id="url_1" onclick="return checkUrl(this)" href="http://www.discuz.net/viewthread.php?tid=1211354" target="_blank"><font color="#0070af">授人以鱼不如授人以渔,UCHome全面大解析培训活动开展一继  <a id="url_2" onclick="return checkUrl(this)" href="http://www.discuz.net/viewthread.php?tid=1211354" target="_blank"><font color="#0070af">授人以鱼不如授人以渔,UCHome全面大解析培训活动开展一之后,许多用户反应希望能从简单的开始,因此此系列活动进行相应的修改。本期主要介绍UCHOME的体系结构开始,一步一步教大家理解UCHOME。UCHOME安装后的主要目录与文件介绍:admin/      管理后台api/      API函数[插件开发与模板等的修改不需要动此文件]attachment/ 附件目录data/   缓存目录,此目录要有777权限,系统相关缓存基本上都在这里了   data/tpl_cache/ 模板缓存目录,注意,如果你的UCH白屏了,无法进入后台跟新缓存,通过FTP手工删除此目录下的所有文件即可相当于模板缓存的更新image/  图片目录language/   语言目录 ,跳转提示语言等source/  PHP源程序目录template/  模板目录theme/ 个人主页目录uc_client/ ucenter客户端 [插件开发与模板等的修改不需要动此文件]以下是UCHOME根目录下常用文件【不常用的不在介绍】admincp.PHP  后台管理入口文件common.PHP  通用文件,所有的文件都要包含这个文件,在上篇已详细解释了内容config.PHP  基本配置文件cp.PHP     编辑日志、相册、活动等等相关编辑操作基本上都从这个文件入口do.PHP   登录注册、找回密码、相册批量上传、在需要密码的情况下才能查看日志相册、验证码、发送邮件统计邮件验证等行为的入口文件editor.PHP  编辑器的入口文件,强烈建议您不用动他magic.PHP  道具入口文件network.PHP便看看等入口文件space.PHP   个人空间、日志、相册、活动等入口文件我们一般修改UCH主要涉及的入口文件有space.PHP  network.PHP  do.PHP  cp.PHP 这四个,那么我们如何根据你访问的URL判断涉及到那些PHP文件和模板文件,方便您的进一步修改!好了,现在我们以最简单的do.PHP入口文件来分析下,举个列子,如果我们使用找回密码功能,通常链接如下:do.PHP?ac=lostpasswd,而注册链接一般分两种,一种是do.PHP?ac=后台自定义登录识别名另一种是do.PHP?ac=随机好了,我们进入do.PHP文件中继续看看<div class="cnblogs_code" onclick="cnblogs_code_show('8a5498cb-4b96-4148-bc55-81396a332486')">
<img class="code_img_closed" id="code_img_closed_8a5498cb-4b96-4148-bc55-81396a332486" style="display: none" src="http://code.js-code.com/res/2019/02-07/12/1c53668bcee393edac0d7b3b3daff1ae.gif" alt=""><img class="code_img_opened" id="code_img_opened_8a5498cb-4b96-4148-bc55-81396a332486" onclick="cnblogs_code_hide('8a5498cb-4b96-4148-bc55-81396a332486',event)" src="http://code.js-code.com/res/2019/02-07/12/405b18b4b6584ae338e0f6ecaf736533.gif"&gt;<span class="cnblogs_code_collapse">代码
<div id="cnblogs_code_open_8a5498cb-4b96-4148-bc55-81396a332486">

 PHP文件,在上篇已详细解释了内容  获取方法 获取do.PHP?ac中ac的值  自定义登录 fig 全局变量$_SCONfig['login_action']就是ac=自定义标示名或那个随机串,如果相同则把原来的do.PHP?ac=XXXX抓换成类似效果do.PHP?ac=login     fig 全局变量$_SCONfig['register_action'] 自定义标示名或那个随机串,如果相同则把原来的do.PHP?ac=XXXX抓换成类似效果do.PHP?ac=register      方法 登录,register定义的是注册,lostpasswd定义的是找回密码,与上面访问的URL是否是对应上了 PHP?ac=login,do.PHP?ac=register,do.PHP?ac=lostpasswd,其他类似!如果ac后的参数不在下面的数组中,则为非法。跳转首页    PHP   链接 PHP?ac= 文件的意思,继续执行一下文件的意思,  链接是do.PHP?ac=lostpasswd的话,程序继续执行source/do_lostpasswd.PHP文件 PHP

大佬总结

以上是大佬教程为你收集整理的授人以鱼不如授人以渔,UCHome全面大解析培训【第二集】全部内容,希望文章能够帮你解决授人以鱼不如授人以渔,UCHome全面大解析培训【第二集】所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: