我的论坛源代码(一)


Posted in PHP onOctober 09, 2006

其实写这几篇代码的时间不过近三天而已,事前即没有经过详细思考和计划(可以说一点计划都没有)那天想起做个论坛试试,于是就做起来了,而我也是才接触了将近一个月时间的PHP,以前也没真正写过程序之类的东东,在写这段代码的两天半时间里,有好几次遇到困难,都想放弃,但是我还是写出来了,而且没想到居然能用,所以中间可能有很多隐患也说不清,虽然说是可以用了。
再过两天,我就要去上班,也没时间再仔细地从头到尾检查这些代码了,这也是我放上来的原因之一,还有一个原因是,因为我想让大家一起来看看这些字符,我只是个菜鸟,中间可能有很多捷径没走,也有可能有很多地方不对,而且近两天我改了部份页面的代码,但其它相关的代码没去掉,所以有些地方有点重覆。但是它能正常运行,这是肯定的(至少表面上正常,我在WIN98/APACHE/PHP/MYSQL下用没问题,在网上测试也没问题,其它环境下就不知道了。我只希望和我一样的菜鸟们,或是比我还菜的菜鸟们能从中得到些什么,而那些老鸟及前辈们能来信或留言指出中间的缺点或不足的话,我会更高兴。因为那样的话,我也可从中学到不少东西。我的邮件地址是:hllinyu@netease.com,OICQ:2289230,主页地址是:http://lfox.oso.com.cn
好了,废话说太多了,我希望大家能投入到修改这个论坛源代码的工作中来,让它成为中国人自己开发的免费论坛,让论坛代码成为许许多多像我一样对PHP很感兴趣而又感觉无从下手的朋友们手下的参考资料就行了。下面来看我的论坛吧!
首先介绍要用的两个表存放贴子信息的foxbbs和存放用户信息的useinfo,因为当初考虑到数据空间不是很大,所以选择了MYSQL+TXT的方式来做,所有主题除了内容外都是存放在MYSQL里的,而数据量相对较大的主题内容和回复内容都单独存放扩展名为.FOX和.BBS的TXT格式文件里,在表里加个存放文件名的字段就行了,为了避免文件名重覆,取当前的系统时间来做文件名,比如2001年1月2日11时20分30秒发了一张帖子,文件名就是20010102112030.txt我想这能满足绝大部分的要求了,因为可能没几个论坛会热到每秒钟都有两张或两张以上的新帖出现吧!呵呵……
此论坛的具体情况可见http://lfox.oso.com.cn/foxbbs/foxbbs.php,另外主页面http://lfox.oso.com.cn/index.php上提供源码打包下载,看了源代码可别来捣乱哦。

useinfo 用户信息表  
0   usename    varchar(8)    not null          用户名
1   usepass    varchar(8)    not null          密码
2   useni      varchar(30)   not null 昵称  
3   useoicq    varchar(12)   not null    
4   usesex     int(1)        not null 用户性别  
5   useage     int(2)        not null 用户年龄  
6   usezy      varchar(4)    not null 职业  
7   useaddr    varchar(20)   not null 地址  
8   usemail    varchar(40)   not null 邮箱  
9   useweb     varchar(50)   not null 主页  
10  useqm      varchar(240)  not null  签名   
11  useattr    int(1)        not null 属性   1用户2版主3管理员4站长  
12  useinf     int(1)        not null 是否公开信息 1否2是   
13  useid      int(5)        not auto_increment   primary key   用户ID号
14  usebq      int(1)        not null   表情
15  regdate    datetime;                注册时间
16  enddate    varchar(22)   not null   最后到站时间
17  ftnum      int(4)        not null   发贴数
18  usety      char(1)  not null         

foxbbs 论坛主题表  
0 id int(5) not auto_increment primary key  
1 usename varchar(20) NOT 发帖用户名  
2 ftbq int(1) not 表情  
3 title varchar(40) not 主题  
4 ftdate varchar(22) not 发帖时间  
5 mesname varchar(15) not 内容文件名 20010102055635 我多了留一位,以防意外,其实十四位就足够了。
6 djnum int(4) not 点击数  
7 hfnum int(3) not 回复数  
8 hfdate varchar(24) not 最后回复时间  
9 hfname varchar(20) not 回复文件名
10 hfusename varchar(20) not 最后回复人名
11 ip      varchar(15)
12 lockes int 1

linkfox.inc.php连接数据库用
<?
$dbhostname = "lfox";
$dbusername = "root";
$dbpassword = "root";
$dbName = "flyfox";
MYSQL_CONNECT($dbhostname, $dbusername, $dbpassword) OR DIE("Unable to connect to database");
@mysql_select_db( "$dbName") or die( "Unable to select database");
?>  

PHP 相关文章推荐
PHP学习之正则表达式
Apr 17 PHP
Apache中php.ini的设置方法
Feb 28 PHP
解析thinkphp import 文件内容变量失效的问题
Jun 20 PHP
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
Jun 25 PHP
PHP三元运算的2种写法代码实例
May 12 PHP
百度实时推送api接口应用示例
Oct 21 PHP
PHP删除指定目录中的所有目录及文件的方法
Feb 26 PHP
PHP中把对象转换为关联数组代码分享
Apr 09 PHP
PHP设计模式之简单投诉页面实例
Feb 24 PHP
PHP请求远程地址设置超时时间的解决方法
Oct 29 PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
Nov 15 PHP
PHP 7.4中使用预加载的方法详解
Jul 08 PHP
我的论坛源代码(二)
Oct 09 #PHP
我的论坛源代码(三)
Oct 09 #PHP
我的论坛源代码(四)
Oct 09 #PHP
PHP的FTP学习(三)
Oct 09 #PHP
我的论坛源代码(六)
Oct 09 #PHP
我的论坛源代码(五)
Oct 09 #PHP
杏林同学录(五)
Oct 09 #PHP
You might like
Get或Post提交值的非法数据处理
2006/10/09 PHP
Yii rules常用规则示例
2016/03/15 PHP
PHP实现无限分类的实现方法
2016/11/14 PHP
让getElementsByName适应IE和firefox的方法
2007/09/24 Javascript
锋利的jQuery 要点归纳(一) jQuery选择器
2010/03/21 Javascript
jquery实现弹出层遮罩效果的简单实例
2014/03/03 Javascript
Seajs的学习笔记
2014/03/04 Javascript
javascript实现节点(div)名称编辑
2014/12/17 Javascript
PHP+mysql+Highcharts生成饼状图
2015/05/04 Javascript
BootStrap智能表单实战系列(十一)级联下拉的支持
2016/06/13 Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
2016/11/10 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
Three.js中网格对象MESH的属性与方法详解
2017/09/27 Javascript
node.js基于express使用websocket的方法
2017/11/09 Javascript
完美解决手机网页中输入框被输入法遮挡的问题
2017/12/19 Javascript
Python中用altzone()方法处理时区的教程
2015/05/22 Python
Python中的推导式使用详解
2015/06/03 Python
python中kmeans聚类实现代码
2018/02/23 Python
python实现按长宽比缩放图片
2018/06/07 Python
Python3实现的回文数判断及罗马数字转整数算法示例
2019/03/27 Python
使用Python防止SQL注入攻击的实现示例
2020/05/21 Python
利用Python实现某OA系统的自动定位功能
2020/05/27 Python
matlab、python中矩阵的互相导入导出方式
2020/06/01 Python
Python暴力破解Mysql数据的示例
2020/11/09 Python
Django跨域请求原理及实现代码
2020/11/14 Python
Clos19英国:高档香槟、葡萄酒和烈酒在线购物平台
2020/07/10 全球购物
党员自我批评与反省材料
2014/02/10 职场文书
体育活动总结范文
2014/05/04 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
高中国旗下的演讲稿
2014/08/28 职场文书
优秀班组事迹材料
2014/12/24 职场文书
清洁工工作总结
2015/08/11 职场文书
高一英语教学反思
2016/03/03 职场文书
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript
5人制售《绝地求生》游戏外挂获利500多万元 被判刑
2022/03/31 其他游戏
golang语言指针操作
2022/04/14 Golang