• 1759阅读
  • 20回复

2016年2月3日:手机版本月发帖数统计数据可能不正确的原因及解决方法 [复制链接] [手机版]

上一主题 下一主题
离线为你守候
温馨家园,为你守候!

只看楼主 倒序阅读 使用道具 绿 楼主  发表于: 2016-02-03 18:15:31 星期三
五年前,2011年的2月3日,大年初一,莘祺网的今生从国外免费的三蛋空间开始(英文网站,当初很难申请的),那时候叫“为你守候 温馨家园”,真正第一次开始接触现在的这个论坛程序。

五年了,说点什么……
之前发现过手机版的本月发帖数月初不更新的问题,这会影响到数据统计的准确性,所以比较关注。
震撼全世界的一段碑文,很多人后悔没有早看到!

会员数据表月发帖(monthpost)列存储着会员最后发帖月的发帖数,该列数据并不会在每月的第一天自动清零,而是只要会员发过帖,对应的数据就不为零——不管最后一次登录是在什么时候。当第一帖由电脑版发布时,会自动触发更新月发帖数为1,但如果第一帖由手机版发出,月发帖数会更新为原有数据的基础上加1——不管原有数据是上个月,还是N年前的某月。这是我最近一段时间的研究发现,但不确定事实是否的确如此。为了证实我的想法,特意做了测试。

会员ioxnma735最后一次登录是在2011年7月2日,数据表里月发帖数为2(应该是广告帖,被我删除了,实际上是没有帖子的),然后修改密码,用手机版回复了一个帖子,本月发帖数就变成3了,而不是1。


应该是上个月知道了可以把monthpost列数据更改为0的sql执行语句,这样,可以在月初(基本上就是1号了,而且越早越好)通过手动操作强制更新数据表。这当然算是一种解决方法,不过,太不方便,太不“高科技”了。

后台有计划任务,如果sql执行语句能够由一个任务文件自动执行那该多好啊!这是我的美好愿望。

任务文件有几个,但我对php的了解实在是几乎没有,那里面的代码根本就看不懂,什么时间判断,条件判断,又是什么查询,更新,删除什么的,想写一个任务文件出来,那不是难比登天吗?

前天看那几个文件,看来看去,发现了更新数据表的语句,而且monthpost=0也是更新语句,似乎可以接轨哦。那怎么能得到月初第一天的时间呢,又什么时候执行语句呢,时间怎么判断?真难过!后来终于突然想到,时间其实是可以不用考虑的,因为任务有执行时间,只要任务文件能写出来,设置任务的执行时间为1号的0点几分,1点什么的就可以的啊!于是开始测试具体用什么sql语句执行是正确无误的,这个倒不难,但文件怎么写呢?通过仔细观察,发现任务文件应该是一样的开头和结尾,那只要再加上执行语句的完整代码就可以了!

前天晚上第一行执行任务,应该是在晚上的9点20,不过时间到了,却没有结果,我本以为任务文件写得不对,那什么地方不对呢?又过了一会儿刷新论坛,竟然本月发帖数都成0了,成功了!执行时间比设定的时间有几分钟的延迟!太棒了!于是,操作数据表,修改本月发帖数,再次测试任务执行,成功!

于是,今天下午在莘祺网实际测试。

成功!终于解决了这个存在许久的大难题!
不过,下次任务的执行时间是在明天,所以今天没法进行第二次测试了,那就不测试了。重新修改任务的执行时间为每月1日的2点,这是真正的执行时间哦!3月1日早晨起来看结果吧!
最后是修改数据表,按上面的数据修改为你守候,zhangjingyu,燕子,ioxnma735的本月发帖数monthpost。这个是真实的帖子数哦!
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线为你守候
温馨家园,为你守候!

只看该作者 沙发  发表于: 2016-02-03 20:25:35 星期三  点亮(0)
刚刚完成楼上主帖的最后编辑工作。
有段时间没打过这么多字,花这么多时间写一个帖子了。

2月3日,对于我来说是一个值得纪念的日子。五年了,直到今天我依然无比热爱,虽然这个论坛基本上就是我自己玩儿,但努力完善她是我这几年来一直在做的事情,我希望也相信终有一天莘祺网能够长大!

电脑版和手机版一直在更新着。虽然手机版并不漂亮,但就算是在我那个慢得如蜗牛的老爷机上也能打开,虽然每月只有10M的流量,但老爷机一样可以登录论坛,发帖回帖,并不费流量的。现在的oppo手机是老婆不再用的,自然访问莘祺网手机版要快得多了。手机版当然也是重要的——也许有些简陋,但爱没有区别。

昨天在家测试修改商家名片插件了,整整一天的时间。上午修改模板文件,下午重新修改了名片背景图,因为我觉得地址行如果只有一行可能不够用,最好是两行。当然了,css部分也要修改,有时候就是一个像素一个像素的调整,光一个背景图可能就得用了两三个小时吧,家里并不暖和,但也并不妨碍热情。


这个插件之前应该也测试过不是一段时间,两段时间了(不是一次,两次),而且背景图都做好了。之前依稀记得这个插件分页有问题,所以模板和背景图改好后,就开始添加大量数据继续进行测试。
然而,添加到第31条数据时出错了,提示:
MySQL服务器错误(MySQL Server Error):
Duplicate entry '127' for key 1 ( 1062 ) 查看错误相关信息

通过查看数据表,vid行为1-3,101-127,共计30行,继续添加数据时就提示如上,不知道为什么?
于是通过手机搜索,查看了不少结果,其中的一个让我惊诧不已:

tinyint类型数据的最大值是127?vid的数据类型就是tinyint,难道就是因为它?不会吧?

看来这个tinyint类型确实不好,真不知道为什么会突然从3跳到101,不是额外自增吗?最后尝试把vid的数据类型由tinyint改为int(具体什么类型,我也不清楚),继续添加数据就可以了。到最后,共添加了九十多条数据。

后台分页出错!页码的链接不对,所以无法打开。怎么办?只能是研究代码,看不懂也得看!地址如:
adminjob=hack&hackset=mingpian&action=mingpian1&page=4
里面多个1,而这个1是一个判断的结果,所以判断部分的代码有问题。琢磨来琢磨去,那判断的结果不应该是1(链接的一个组成部分),而应该是空,还有另外一个判断的链接组成部分也不太对,修改后,测试各种链接终于正常了!

前台文件右侧,搜索的下边,原来的结构是:
如果开启会员添加名片功能,显示
名称
分类
电话
地址
简介
提交

      如果未登录,显示注册和登录提示
      未登录结束

      如果登录,显示可以提交名片那部分的提示信息
      登录结束

添加名片结束

这样,如果开启了添加名片功能,未登录状态下,能看到但无法提交名片,那显示可以添加名片有什么用呢?逻辑有点儿乱!干脆整合一下,如果开启名片添加功能并且已经登录,则显示添加名片,否则未登录则只显示搜索——这个搜索功能不应该做限制,我觉得。
于是修改代码,虽然不是特别难,也是小心翼翼。

本来以为,前台没有什么问题了,于是又到另外一个子论坛下继续进行测试,又手工添加了63条数据,后台没什么问题,可发现前台有些不对,查看全部没有问题,但按分类查看,当有多页时,所查看的名片信息并不是该分类的,而是全部!又是分页错误!

查看文件,关于页码部分,只有一句:
$pages = numofpage($rt['sum'],$page,ceil($sum/$db_perpage),"hack.php?H_name=mingpian&keyword=$keyword&");

这显然是针对搜索部分的分页页码链接,用在查看名片,尤其是分类查看名片时就不正确了。怎么办?链接应该是分类,分条件的,那需要什么条件,如何输出呢?后来想到,可以参照后台。经过尝试,终于初步成功了!

来莘县之前,特意备份了跟商家名片有关的两个数据表的数据,这样,可以直接恢复数据,不用动手手工添加数据了。还是继续测试,模板文件又略有修改,没什么大的问题,于是莘祺网实际测试。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线为你守候
温馨家园,为你守候!

只看该作者 板凳  发表于: 2016-02-03 21:56:48 星期三  点亮(0)
楼上的帖子又一个半小时,刚刚完成。本来不想怎么更新的,可能是觉得比较不容易吧。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线为你守候
温馨家园,为你守候!

只看该作者 地板  发表于: 2016-02-03 21:59:10 星期三  点亮(0)
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 4楼 发表于: 2016-02-04 07:03:44 星期四  点亮(0)
主帖有一处monthpost打错了,记号下。O(∩_∩)O

——本帖通过莘祺网回复.
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线为你守候
温馨家园,为你守候!

只看该作者 5楼 发表于: 2016-02-04 07:30:54 星期四  点亮(0)
好了,已更新。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 6楼 发表于: 2016-02-09 13:31:24 星期二  点亮(0)
前天晚上第一行执行任务,“第一次”。

——本帖通过莘祺网回复.
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 7楼 发表于: 2016-02-28 22:05:10 星期日  点亮(0)
我以为明天就1号了呢,不过不是啊,明天是29号。闰年吗?闰几月呢?

——本帖通过莘祺网回复.
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 8楼 发表于: 2016-02-29 22:43:18 星期一  点亮(0)
计划任务会准时执行吗?很期待明天的结果!

——本帖通过莘祺网回复.
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 9楼 发表于: 2016-03-01 10:08:23 星期二  点亮(0)
经查看多位会员的个人资料,本月发帖数均为0,说明计划任务正常执行,我们的解决方法是正确的!!!

——本帖通过莘祺网回复.
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!