一个让人疑惑的PHP编码问题的解决打赏

首先声明,小子不是专搞php的,所以对于下文所提及的问题可能是常见的,但出于是新手的原因,这里不太明白。

问题起源:数月前在博友哪里看到一套php写的在线挂QQ小程序,就是通过定时刷新登陆3GQQ实现挂机的那种。修改后讲程序扔主机上并把自己收藏多年的几个QQ挂了起来,就这样一直相安无事,很正常运行也从没出现过乱码问题。

问题表现:出现问题是很偶然的一次打开页面,因为很久没打开了,打开还以为是加载缓存问题,结果无聊怎么删除缓存重新加载、刷新,都是无果,出现令人无语的乱码。随便看了下找不出问题,而且我很明确的知道我没有动过原文件。退一万步讲,如果是一些未知因素导致了乱码,我重新上传程序应该没问题了吧?程序本地测试都是没问题的。可是重新上传依然无果。最后只能以放弃告终,好在程序功能还能用,只是个人用的,所以就这么将就下来了。

问题解决:今天,因为白天睡了一天没有 睡意,猫在电脑前折腾博客,折腾完又折腾下其他的东西,最后想起了这个程序的乱码,重新试了自己认为可以解决的n种方法无果,网上找了不少资料,测试无果。最后却败给一句include,因为乱码的地方主要是在一个bottom.php的文件中,其次就是header.php中,index.php首先引人也是header,最后是bottom和footer,结果title是乱码的,bottom里面内容也是乱码的,网上说的是在index中添加如下代码来解决

header("Cache-Control:no-cache");

插入后没反应,不知道是缓存没删还是什么原因(我在线改的),总之等了有一段时间,刷新删缓存n次无效果。
最后,title内容通过修改头部的描述信息如下解决了

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

虽然不确定是不是因为添加以上信息才解决的,但bottom依然是乱码,最后想了一个不正常的手段,在bottom里面也加了句

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

刷新居然正常了。

接下来,不正常的问题又出现了,我将之前添加的东西全部删掉,再次打开页面,依然正常了。至此,我还不知道问题根源所在,但至少还是解决了乱码。具体问题原因,欢迎前来探讨,更欢迎php高手前来指点。

补充一点:有人一直说可能是各种常识性问题,这里不得已更新一下文章了,我已经回复说明过了,不是常见问题,虽然不专业搞php,但是对于这些基础,作为一个Web开发人员,是不是应该都知道呢?如果得罪您了,这里赔礼道歉,我一直认真看诸位网友的评论,也希望过来的网友能够理解下我的话,毕竟我表达能力差嘛。不要见怪。

一个让人疑惑的PHP编码问题的解决
文章《一个让人疑惑的PHP编码问题的解决》二维码
  • 微信打赏
  • 支付宝打赏

已有65条评论

  1. 路人甲

    博客恢复了?

    2012-07-12 22:30 回复
    • 穷小子

      不知道,这会客服在检测,我准备面试呢,没顾上看。

      2012-07-12 22:47 回复
  2. 路人甲

    博客恢复了?

    2012-07-12 22:30 回复
    • 穷小子

      不知道,这会客服在检测,我准备面试呢,没顾上看。

      2012-07-12 22:47 回复
  3. 路人甲

    路过围观的。看来真的被攻击了,不过确定是那小孩么?现在很多小孩子都是这样的。不知道折腾折腾有什么用。

    2012-07-12 21:27 回复
    • 穷小子

      不知道呀,无所谓了,你是群里的黑阔么?

      2012-07-12 22:25 回复
  4. 路人甲

    路过围观的。看来真的被攻击了,不过确定是那小孩么?现在很多小孩子都是这样的。不知道折腾折腾有什么用。

    2012-07-12 21:27 回复
    • 穷小子

      不知道呀,无所谓了,你是群里的黑阔么?

      2012-07-12 22:25 回复
  5. 软件分享

    高手呀!!!

    2012-07-12 19:54 回复
  6. 软件分享

    高手呀!!!

    2012-07-12 19:54 回复
  7. Leven

    或许你可以贴出代码让大家看看?不一定会是网页的编码不正确,有可能是脚本的编码错了。

    2012-07-11 10:12 回复
    • 穷小子

      可能我表达有问题吧,我意思是说之前没有问题,没动文件的情况下突然出现问题,然后改了改恢复了,把改的地方还原也没问题了。

      2012-07-11 15:26 回复
      • Leven

        之前的情况是什么样的?没改动文件时是不会出问题的,那么可能脚本本身就有问题,只不过,之前因为数据全都是初始化状态罢了。或者还有一个原因,就是浏览器的编码搞错了,在浏览页面时,把右键>编码>自动选择(或自动检测)的勾去掉。

        2012-07-11 19:27 回复
        • 穷小子

          这些问题全部试过了,不存在浏览器原因和编码什么的,不然不会说诡异的,程序没有涉及数据库,原先找的程序好好的,我修改后也没问题,运行了两个月了,突然出问题,找不到原因又重新上传没修过之前的程序一样乱码,但这些在改过之后都没问题了

          2012-07-11 19:40 回复
        • 穷小子

          这类浏览器编码的常识性问题,不必怀疑

          2012-07-11 19:42 回复
          • Leven

            那文件是否是utf8编码?普通编辑器修改难免留下bom头,如果是,清除一下bom头试试看,除此之外我想不出还有什么能导致脚本出错。

            2012-07-12 10:05 回复
            • 穷小子

              我跟你讲了问题已经解决了,这些都是常识性问题,Understand?

              2012-07-12 11:04 回复
              • 雨痕

                汗,这个态度。。。

                2012-07-12 11:54 回复
                • 雨痕

                  别人是抱着帮你解决问题的心来的,你的回复却是无比厌烦的以及。。。。呵呵,图森破。

                  2012-07-12 11:55 回复
                  • 穷小子

                    我问题解决过了呢,不好意思让你会有这样的感觉,只是很多人根本不知所云

                    2012-07-12 12:06 回复
                  • 路人甲

                    楼上仁兄也挺没意思的。那小孩是你什么人啊。反正如果有人这样跟我讲常识我是不会有多待见他。还没事公鸡。呵呵,真的图森破了

                    2012-07-12 21:40 回复
                    • 穷小子

                      说实话不懂你们的图森破。

                      2012-07-12 22:52
                    • 雨痕

                      你有意思,我觉得挺逗的。公鸡的事情我不知道。但是我觉得对待一个好心帮助你的人,这种态度就不对。无所谓啊,我也只是旁观者。教育人是别人父母和老师的责任,我的手还不至于伸这么长。

                      2012-07-13 11:42
                    • 穷小子

                      好吧,都说了是我的原因,我解决过的问题不该发出来,而且我表达能力差,让他们大家觉得我问题没解决。

                      2012-07-13 12:50
                    • 穷小子

                      哥们,还让人家以为跟我是一伙的呢,这事本来不该说那么多,是我闲着了,我是做J2EE程序开发的,可能做php、网站之类的认为我不会懂这个吧。算我多嘴,查了图森破我真的笑了,现在的弟弟们都喜欢跟哥哥较真,看来我是老了。

                      2012-07-13 12:55
              • 兜兜丶里没糖

                那就滚,OK?什么态度?fuck

                2012-07-12 12:34 回复
                • 穷小子

                  不好意思,我态度不好了,不改还想问下小兄弟,怎么样才能确定不改文件不会出问题呢?

                  2012-07-12 12:48 回复
                  • 路人甲

                    都被公鸡了你还这么淡定,佩服ing

                    2012-07-12 21:48 回复
                    • 穷小子

                      我没有毅力啊。呵呵

                      2012-07-12 22:52
            • 穷小子

              还有一点,不是脚本错误,是编码错误,请不要混为一谈,说问题诡异是因为现在这个现象无论如何还原不了

              2012-07-12 11:17 回复
  8. Leven

    或许你可以贴出代码让大家看看?不一定会是网页的编码不正确,有可能是脚本的编码错了。

    2012-07-11 10:12 回复
    • 穷小子

      可能我表达有问题吧,我意思是说之前没有问题,没动文件的情况下突然出现问题,然后改了改恢复了,把改的地方还原也没问题了。

      2012-07-11 15:26 回复
      • Leven

        之前的情况是什么样的?没改动文件时是不会出问题的,那么可能脚本本身就有问题,只不过,之前因为数据全都是初始化状态罢了。或者还有一个原因,就是浏览器的编码搞错了,在浏览页面时,把右键>编码>自动选择(或自动检测)的勾去掉。

        2012-07-11 19:27 回复
        • 穷小子

          这些问题全部试过了,不存在浏览器原因和编码什么的,不然不会说诡异的,程序没有涉及数据库,原先找的程序好好的,我修改后也没问题,运行了两个月了,突然出问题,找不到原因又重新上传没修过之前的程序一样乱码,但这些在改过之后都没问题了

          2012-07-11 19:40 回复
        • 穷小子

          这类浏览器编码的常识性问题,不必怀疑

          2012-07-11 19:42 回复
          • Leven

            那文件是否是utf8编码?普通编辑器修改难免留下bom头,如果是,清除一下bom头试试看,除此之外我想不出还有什么能导致脚本出错。

            2012-07-12 10:05 回复
            • 穷小子

              我跟你讲了问题已经解决了,这些都是常识性问题,Understand?

              2012-07-12 11:04 回复
              • 雨痕

                汗,这个态度。。。

                2012-07-12 11:54 回复
                • 雨痕

                  别人是抱着帮你解决问题的心来的,你的回复却是无比厌烦的以及。。。。呵呵,图森破。

                  2012-07-12 11:55 回复
                  • 穷小子

                    我问题解决过了呢,不好意思让你会有这样的感觉,只是很多人根本不知所云

                    2012-07-12 12:06 回复
                  • 路人甲

                    楼上仁兄也挺没意思的。那小孩是你什么人啊。反正如果有人这样跟我讲常识我是不会有多待见他。还没事公鸡。呵呵,真的图森破了

                    2012-07-12 21:40 回复
                    • 穷小子

                      说实话不懂你们的图森破。

                      2012-07-12 22:52
                    • 雨痕

                      你有意思,我觉得挺逗的。公鸡的事情我不知道。但是我觉得对待一个好心帮助你的人,这种态度就不对。无所谓啊,我也只是旁观者。教育人是别人父母和老师的责任,我的手还不至于伸这么长。

                      2012-07-13 11:42
                    • 穷小子

                      好吧,都说了是我的原因,我解决过的问题不该发出来,而且我表达能力差,让他们大家觉得我问题没解决。

                      2012-07-13 12:50
                    • 穷小子

                      哥们,还让人家以为跟我是一伙的呢,这事本来不该说那么多,是我闲着了,我是做J2EE程序开发的,可能做php、网站之类的认为我不会懂这个吧。算我多嘴,查了图森破我真的笑了,现在的弟弟们都喜欢跟哥哥较真,看来我是老了。

                      2012-07-13 12:55
              • 兜兜丶里没糖

                那就滚,OK?什么态度?fuck

                2012-07-12 12:34 回复
                • 穷小子

                  不好意思,我态度不好了,不改还想问下小兄弟,怎么样才能确定不改文件不会出问题呢?

                  2012-07-12 12:48 回复
                  • 路人甲

                    都被公鸡了你还这么淡定,佩服ing

                    2012-07-12 21:48 回复
                    • 穷小子

                      我没有毅力啊。呵呵

                      2012-07-12 22:52
            • 穷小子

              还有一点,不是脚本错误,是编码错误,请不要混为一谈,说问题诡异是因为现在这个现象无论如何还原不了

              2012-07-12 11:17 回复
  9. 山特ups电源

    呵呵

    2012-07-10 14:38 回复
  10. 山特ups电源

    支持一下。

    2012-07-10 14:35 回复
  11. 捕鱼达人攻略

    全篇看完,完全搞不懂意思,别说疑惑了1

    2012-07-10 11:35 回复
  12. 刘彦硕

    我记得我之前用一个企业程序好像也有过类似的情况,就是之前网站乱码什么的错误很多,添加了一些修改代码后,好像就好了。然后又去掉,但是问题没有再次出现。。。

    2012-07-10 08:28 回复
  13. 返朴归真

    自己写了个挂Q的程序,php的,感觉不错。
    网上的源码也看过,太复杂,也只看个半懂…

    2012-07-09 20:58 回复
    • 穷小子

      是么。你的简单版地址是?发来瞧瞧。

      2012-07-09 22:25 回复
  14. 武汉安防

    感谢楼主精彩分享,谢谢! http://www.cctvbd.com

    2012-07-09 08:25 回复
  15. 游客 390

    外行人看不明白

    2012-07-09 07:05 回复
  16. 阿良

    很疑惑额。看不明白。

    2012-07-09 05:26 回复

(必填)

(必填)

(可选)