一个模仿oso的php论坛程序(之一)第1/2页

5年以前  |  阅读数:492 次  |  编程语言:PHP 

我经常使用oso的论坛,个人感觉挺好的,因此模仿oso的界面编了一个程序,与大家共享。
程序由三部分组成,即显示主题信息,显示论坛信息,增加论坛信息,主题与论坛内容采用主从表关系。
表结构如下:
drop table fr_t_forumtitle;
create table fr_t_forumtitle(
id integer,
state varchar(1),
readcount integer,
replycount integer,
title varchar(100),
createman varchar(20),
replyman varchar(20),
replytime datetime);

drop table fr_t_forumcontent;
create table fr_t_forumcontent(
id integer,
replyman varchar(20),
replytime datetime,
replyemail varchar(100),
replyhttp varchar(100),
replyface smallint,
content text);

drop table fr_t_parameter;
create table fr_t_parameter(
code varchar(10),
name varchar(40),
content varchar(10));
insert into fr_t_parameter(code,name,content) values('pageline','分页数','20'); / 调整该参数可以修改每页行数 /

程序1:mainforum.php

论坛

<?
include ("c:mydbheader.inc");
?>

当前位置:主页――论坛
论坛搜索

<?
$dbh = mysql_connect('localhost:3306','root','');
mysql_select_db('test');

$res=mysql_query("SELECT content FROM fr_t_parameter where code = 'pageline'",$dbh);      
$row=mysql_fetch_array($res);      
global $pageline;    
$pageline = $row["content"];     
if (empty($pageline))  {    
   $res=mysql_query("insert into fr_t_parameter(code,name,content) values('pageline','分页数','20')",$dbh);      
   $row=mysql_fetch_array($res);      
   $pageline = 20;    
}    

$res=mysql_query("SELECT COUNT(*) AS rcnt FROM fr_t_forumtitle",$dbh);      
$row=mysql_fetch_array($res);      
$rcount = $row["rcnt"];      

$res=mysql_query("SELECT COUNT(*) AS rcnt_con FROM fr_t_forumcontent",$dbh);      
$row=mysql_fetch_array($res);      
$rcon_count = $row["rcnt_con"];      

print '<table width="100%" border="0">';    
print '<tr class="text">';     
print '<td width="15%">   </td>';    
print '<td width="35%">  <div align="left"> ';    
print "主题数:".$rcount."  帖子数:".$rcon_count;    
print '<td width="35%">  <div align="right"> ';    
print '<a href="addforum.php?theme_id=0" target="_top"><img src="post.gif" alt="加新帖子" border="0"></a>';    
print '<td width="15%">   </td>';    
print '</td></table>';    


$pages=ceil($rcount / $pageline); //$pages变量现在包含所需的页数      

if (empty($offset))  {    
  $offset=1;      
  $curline = 0;    
} else    
$curline = ($offset - 1) * $pageline;    

//打印表头
print '

';
print '
';
if ($offset <> 1) { //如果偏移量是0,不显示前一页的链接
$newoffset=$offset - 1;
print "前一页";
} else {
print "前一页";
print " ";
}
//计算总共需要的页数
$pages=ceil($rcount/$pageline); //$pages变量现在包含所需的页数

当前1/2页 12下一页阅读全文

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例