Maison >développement back-end >tutoriel php >模仿OSO的论坛(五)_PHP教程
在前面的post.php及reply.php中,在发言提交成功后都跳转到一个叫post_end.php的页面,这个页面主要是提示发言提交成功,并给出了一个到faq.php的链接,程序非常简单,我就一并写在下面了:
你的发言已提交
返回疑难问题首页
在这一节中,我们将着力讨论如果实现我们在开头所列出的本论坛所缺少的八项功能:
1、在我的论坛中只有在用户登录后才能发言,用户的ID是存在一个叫“cookie_user”的cookie变量中的。
我想这应该不是论坛程序的主要内容,关于用户登录,有很多很完善的程序可供参考,如果你想让你的论坛程序更完善的话,你可以考虑在post.php及reply.php中添加一个用户登录的模块。你还可以在考虑在用户第一次登录时,自动帮他做用户注册。
2、我的论坛没有子论坛。
事实上,这必须在数据表guestbook中添加一个字段id_style,以注明所属子论坛的id,另外你最好设计一个数据表,名字叫bm_style,该表包含两个字段:style_code(子论坛编码),style_name(子论坛名称),而在guestbook中的字段id_style应该存放的是子论坛编码。
3、我没有统计一个主题的点击数。
在数据表guestbook中添加一个字段count_read,在post.php将其初始值设为1,在read.php中将其累加。
4、在OSO论坛中每一个主题前面的表示有没有新贴子的图标我也没设计。
在用户的cookie中记录用户最后一次阅读贴子的时间,然后用这个时间与time_close进行比较,如果time_close大于这个值,就将该主题标识为有新贴子。
5、对于OSO论坛所提供的可选择的主题排列方式以及显示时间段我也没考虑。
给用户一个选择的下拉列表框,并根据用户选择的排列方式改变read.php中select语句order子句的内容,根据用户选择的显示时间段增加where子句。
6、没有会员发贴积分的统计。
在my_user表中增加point字段,注册时置一个初始值,在post.php及reply.php中增加相应积分。
7、没有版主管理论坛的功能。
在my_user表中增加type字段,注明用户类型,对于类型为版主的用户可以进入一个管理界面,可以对guestbook数据表执行delete操作。
8、没有贴子编辑的功能。
对于用户自己的贴子(即guestbook中的name和cookie中的name相同),可以让用户对其执行相应update操作。
至此,这篇习作全部结束,有不到之处,还请各位高手批评指正,其中涉及有抄袭OSO嫌疑的(界面部分),在此一并向各位OSO的同志致谢。
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】