
出自三国《黑暗兵法》:屠一城,降十城。
微软屠掉番茄,引其它工作组隐退。
封btchina,无论bt站还是压片组皆明哲保身,视频站开始花钱买版权。
借扫黄强关机房,无数站长惶恐备案从良转机房,门户从紧审核。
封杀一站,无数小站交保护费。
提物价,引GDP猛然而升。
古往今来,战乱纷争,屠城之事不绝。
只是在和平之下,以另一种形式存在,以另一种我们看不见的残忍存在。
以一种令我们麻木的方式存在。
麻木到被屠数次仍浑然不觉。

出自三国《黑暗兵法》:屠一城,降十城。
微软屠掉番茄,引其它工作组隐退。
封btchina,无论bt站还是压片组皆明哲保身,视频站开始花钱买版权。
借扫黄强关机房,无数站长惶恐备案从良转机房,门户从紧审核。
封杀一站,无数小站交保护费。
提物价,引GDP猛然而升。
古往今来,战乱纷争,屠城之事不绝。
只是在和平之下,以另一种形式存在,以另一种我们看不见的残忍存在。
以一种令我们麻木的方式存在。
麻木到被屠数次仍浑然不觉。

1,领导才下飞机,记者问:你对三陪小姐有何看法?
领导很吃惊:北京也有三陪小姐?
记者第二天登报《领导飞抵北京,开口便问有无三陪》
2,记者问领导:你对三陪问题有何看法?
领导:不感兴趣!
记者第二天登报《领导夜间娱乐要求高,本地三陪小姐遭冷遇》
3,记者问领导,你对三陪小姐没有看法?
领导很生气:什么三陪四陪五陪的?不知道!
妓者第二天登报《三陪已难满足领导,四陪五陪方能过瘾》
4,记者后来再问领导,领导不发言。
妓者第二天登报《面对三陪问题,领导无言以对》
5,领导大怒,对记者说,这么乱写,我去法院告你!
妓者第二天登报《领导一怒为三陪》
6,领导气急之下,将记者告到法庭。
媒体争相报道《法庭将审理领导三陪小姐案》
7,领导阅后血压骤升,猝然倒下。
记者采写长篇通讯《日理万机的好鬃,您是为人民累死的啊》

今早在CB看到《传马云支付宝年会上骂哭总裁邵晓锋 》,马云把支付宝的用户体验骂到体无完肤“烂!太烂!烂到极点!”,15个大男人灰头土脸站到台上,当着场下全阿里巴巴员工痛哭流涕。忽然想到支付宝UED不是白鸦那个老男人负责的吗?
于是飞奔到老男人的博客,果然见一篇悔过文 。
.......
说真话,如果没有前面的历史回顾,我会义无反顾的去顶这个老男人,在评论里发些微弱的文字支持他。但,就因为前边的历史回顾,使得整篇文章的读者体验降低了。虽然UED我也搞,而且水平比白鸦差N多,但因为我不崇拜任何人,所以看问题能比别人清醒一些吧。
.......

分析这个是因为emlog的评论功能很简单,所以等以后抽空要写这个东西,正好想到了写出来存个稿。
比如回复了评论id为5的评论。那么这个评论就归属于评论id为5的这个评论。
以现有的评论表来实现这个关联有点难。如果加个关联表,对老评论以及以后升级也没好处,不如在评论表加个父评论字段比较省事。
新建一字段facid,不允许为空,加个默认值0;
回复评论好写,稍微改造一下原来的表单,多提交个父级字段即可。因为写库需要改动原来存评论的那个文件。所以提交和写库最好单独写个文件实现,而且这样做原来评论的表单也不用动,免得改动源文件。
显示复杂点,比如要显示id为1的文章下的所有评论:
在库里查找所有gid为1的评论,并按facid分组,facid内再按cid排序。
剩下的交给php循环读出来就行了。其实就是一个[facid][cid]的二维数组。
这里只考虑最简单的情况,
未考虑最多允许盖几层楼,多出来的楼怎么显示的问题。
如果emlog像wordpress那样在表里预留几个字段供别人开发,希望emlog的作者能考虑到,在下个版本中搞好扩展。

晚上刚给项目写了个注册验证类,其中涉及到几个常用的正则,留下存档:
用户名验证,只能使用数字大小写英文和下划线,没限制第一个字符非得是英文,感觉没用,人家就愿意用QQ号当用户名:
var patrn = /^[0-9a-zA-Z_]{5,20}$/;
密码验证,包含特殊字符,比较麻烦的正则:
var patrn = /^[\da-zA-Z )~`!@#$%^&*\-_=+|\\}\]{[;:"'?><,./(]{5,16}$/;
邮箱验证,别看写的乱,其实一点不难,把邮箱地址以@为界左右拆开就好写了:
var patrn = /^[\-!#\$%&'\*\+\\\.\/0-9=\?A-Z\^_`a-z{|}~]+@[\-!#\$%&'\*\+\\\.\/0-9=\?A-Z\^_`a-z{|}~]+(\.[\-!#\$%&'\*\+\\\.\/0-9=\?A-Z\^_`a-z{|}~]+)+$/;
QQ号码验证,位数5-10位,且第一位肯定不是0:
var patrn = /^[1-9]{1}[0-9]{4,9}$/;
名称验证,只允许中英文和横线下划线。这里有难度的就是怎么用正则表达式匹配中文,如果了解unicode就不难了:
var patrn = /^[\u4E00-\u9FA50-9a-zA-Z\-_]{1,15}$/;
如果以后写到常用的正则再添,估计没什么常用的了吧。

写在前面:两篇文章针对百度竞价排名分别阐述自己的观点,一方认为理所应当,一方认为违反市场规则,孰是孰非,圈内人早已心知肚明,不明的只是上面和下面的,此文转过来留下我们中间层只供宣泄吧。
文章较长,且我将两篇文章粘到一起,有心看的是肯定会顺序读完的,无心看的怎么贴都不会看,于是这样贴也无妨

非模板的源文件改动在这里记录。
评论时间改成实际时间:
改model/class.comment.php 第53行
//$row['date'] = smartyDate($row['date']); ----注释掉原来的
改成:
$row['date'] = date('Y-m-d h:i',$row['date']);
文章下评论排序方式由按时间倒序改成顺序:
还是上面那个文件 第40行
DESC改成ASC