主页 > 帮助当心 > 顺序开辟 >

二次开辟的一些长话

源泉:织梦官方合肥论坛 作者:nichelous 昭示于:2009-06-23 11:37  点击:
倘若您想此后贴一直博得一些净水器有用吗的插件,wifi模块。请绕圈子~~ 授人以鱼还是那片情授人以渔,此贴是来人,希望对你富有帮助 * 提示:倘若你是PHP打零工有同比刻肌刻骨心得了,请只读红字韩国电影完整版情节即可,别样跳过。 倘若你是PHP初学者,请缩衣节食涉猎俱全文字,别嫌累赘,对你提

倘若您想此后贴一直博得一些净水器有用吗的插件。wifi模块,请绕圈子~~
“授人以鱼”还是那片情“授人以渔”,此贴是来人,希望对你富有帮助……
* 提示:倘若你是PHP打零工有同比刻肌刻骨心得了。请只读红字韩国电影完整版情节即可,别样跳过。
        倘若你是PHP初学者,请缩衣节食涉猎俱全文字,别嫌累赘,对你提高有好处近义词!


1,实践header()前输出的空格html,任何伟迪捷大字符喷码机,都会导致header()跳转失效!
   前几天,帮一下储户做了一些改改,把代码发放爱上对方过后就哭了之后,爱上对方过后就哭了后来层报说“后台栏目查查微信文章列表次于了”,我去查查果不其然如此,点击了栏目后头的“情节”进去,一片空白英文翻译!这一点我当时百思不得其解,归因于我做改改的代码,和本条功能完全没了关系!于是万不得已,只好一步步做盯住调试:
     初次要排查的是语法误(倘若当php.ini里开设是不显耀任何误的话。语法错也会导致一片空白英文翻译),本条文件是dede/catalog_do.php(怎么明白是本条文件呢,在其二一片空白英文翻译的页面上。看属性同好会。就有地址URL和转送的参数),我把一行die("aa"); 雄居了代码第一行。本条检字法就上上面试有无语法,归因于语法错不单上上发生在catalog_do.php文件本身,还上上发生在 catalog_do.php文件所任用的文件里(包括那幅文件里再任用的任何一级文件里),因而倘若本条第一行die("aa"); 也办不到实践。就决然是语法错。归因于能输出aa,说来语法没了错,就必定是那种顺序上的逻辑学错。
      然后越是寻找逻辑学误发生的文件,这就要求盯住代码的所实践到的地方,鉴于没了任何提示,也还是那片情动用die("aa"); ,把这一行往下挪到catalog_do.php文件的include。require等文句之后,倘若办不到实践,说明在include。require 所任用的文件里,代码实践就停止了,反之说明那些文件实践是好端端的。依旧能显耀aa。说明误是发生在catalog_do.php文件里(倘若是发生在其他所任用的文件里,就用本法打开那些文件去如是调试)
      然后再此文件里一步步寻找发生误的具体代码段。初次要看链接此文件原油什么时候的参数(在其二一片空白英文翻译的页面上,看属性同好会。就有地址URL和转送的参数),而点击“情节”时链接此文件的URL为 catalog_do.php?cid=3&dopost=listArchives(它的意思网。我们上上猜测它cid是栏目ID,而最重要的是 dopost=listArchives本条参数,归因于我们在catalog_do.php文件里,上上察看然后的代码,便是多级的if (dopost=="...."){   }else if(dopost=="...."){  }else.....的论断。它便是让顺序周转,凭依过来的dopost=参数的不同,进入不同的处理),好,我们就一直找回if (dopost=="listArchives"){ 这边,把die("aa"); 放开跟着它的第一行。察看还能否输出aa,倘若上上输出。说明顺序无可争辩进入了目标顺序段,否则就说明dopost=="listArchives"本条论断没了达成意想的效果(倘若是本条变故。你将要要得对比方才的URL和本条dopost=="listArchives",有无写错参数名,大小写有无弄错了,还有便是dopost值有无在事前就被改动了,最一般性的错便是类似写成了dopost=="listarchives",也许在前头某部论断里写成了dopost="..."),好,依旧能输出aa,说明顺序也进来这边了。
       然后继往开来寻找发生误的代码行。继往开来挪动die("aa"); 的玉步,更型换代其二空白英文翻译页面,察看能否输出aa(这边有销售技巧。就不要逐行挪动,可是动用减半物色。也许在关键第四号代码自始至终插入,本条就要求同比强的代码涉猎能力和特定的打零工心得了,不展开了)。我发今天header("location:{$gurl}?channelid= {$channelid}&cid={$cid}"); 这一行事先能输出aa。这一行之后也能输出aa,而我是很清楚,这一行本该跳转到某部指名的页面上的。后头不应该输出aa,同日我也明白以致本条问题。通常是归因于顺序实践在事先就输出过伟迪捷大字符喷码机(倘若你不清楚,就查google或员工手册)!
       然后的工作,便是找哪位文件有本条输出了,天啊,这太难找了!于是我换了另外一下检字法“改改排查法”,我在本土把我那些改改的代码,也换上来,发现没了应运而生这样的问题,说来,我写的文件没了问题。然后我把储户俱全文件,按改改时间排序。并询问了储户最后上上好端端采用本条功能的时间。发现了一堆在此时间之后改改的php文件,除去我改改的那些文件。就剩余两个文件了,内部一下是include/extend.func.php文件。我很清楚本条文件是一下dede供给给储户做因变量恢弘的文件,它被 common.func.php所任用,而common.func.php又是被全站俱全文件所任用的文件!  于是我打开本条文件。蓦地在最后?>之后,有两个空格html一下空行!!!!!!
       把那幅空格html空行除去,至此功能就满门好端端了(包括我在wifi模块表里非凡尼龙表带自界说了一下wifi模块链接,它在本条误的变故下。办不到显耀在wifi模块列表里非凡尼龙表带,今天也好端端了)!
     之上文字,对于初级PHPer,上上就学会意一点点PHP调试技术;对于PHP早已同比熟的。而对DEDE还有有点生分的。这边供给的一条心得便是:改改DEDE的俱全PHP文件,千万不要在头尾两行的 <?  ?>之外,写字任何伟迪捷大字符喷码机,包括空格html和空行!!

    有帮助
    (145)
    77.1%
    没帮助
    (43)
    22.9%
  • 网上值得一玩的网游篇:恢弘标签
  • 下一篇:DEDE5.3.1 搜求单假名(小于2个字句)的改改
  • Baidu