一個(gè)簡(jiǎn)潔的多級(jí)別論壇
發(fā)表時(shí)間:2024-02-16 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]本論壇總共用了不到200行代碼,執(zhí)行速度相當(dāng)快。運(yùn)行例子在:http://www.hnpts.ha.cn/forum MYSQL數(shù)據(jù)庫(kù):yxforum +-------+--------------+------+-----+---------+----------------+ Field...
本論壇總共用了不到200行代碼,執(zhí)行速度相當(dāng)快。運(yùn)行例子在:http://www.hnpts.ha.cn/forum
MYSQL數(shù)據(jù)庫(kù):yxforum
+-------+--------------+------+-----+---------+----------------+
Field Type Null Key Default Extra
+-------+--------------+------+-----+---------+----------------+
id int(11) PRI 0 auto_increment
dt datetime YES NULL
tp varchar(255) YES NULL
ct text YES NULL
fl int(11) YES NULL
ip varchar(20) YES NULL
un varchar(50) YES NULL
em varchar(60) YES NULL
num int(11) YES NULL
+-------+--------------+------+-----+---------+----------------+
index.php:
<html>
<head>
<style type="text/css">
<!--
.unnamed1 { font-size: 9pt; font-family: "宋體"}
.unnamed1 A {COLOR: #000088; FONT-SIZE: 9pt; TEXT-DECORATION: none; TEXT-TRANSFORM: none; font-family: "宋體"}
.unnamed1 A:hover {COLOR: #880000; FONT-SIZE: 9pt; TEXT-DECORATION: underline overline; font-family: "楷體_GB2312"}
.unnamed2 { font-size: 12px; color: #9933FF}
-->
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#000066" vlink="#0000CC" alink="#000099">
<?$m=mysql_connect("localhost","××××","××××");
mysql_select_db("××××",$m);
?>
<?if ($fl=="") $fl=1;
$hf_fl=$fl;
$q="select * from yxforum where id=".$fl;
$mr=mysql_query($q,$m);
$ra=mysql_fetch_row($mr);
?>
<p align=center><b><?print($ra[2]);?></b><br>
<?if ($fl!=1) {
?>
<small><?printf("(<a href=mailto:%s>%s</a>) ",$ra[7],$ra[6]);?>
</small></p>
<?$alltt=$ra[2];
$lastid=$ra[4];
print("<center><table width=90% border=1><tr><td bgcolor=#dddddd class=unnamed1>".$ra[3]."</tr></table></center>");
print("<br><small>跟隨主題:</small>");
}
$q="select * from yxforum where fl=".$fl." order by dt desc";
if ($p=="") $p=0;
$mr=mysql_query($q,$m);
$f=mysql_num_fields($mr);
$ra=mysql_fetch_row($mr);
$i=0; $p1=$p*15; /*跳過(guò)指定的頁(yè)數(shù)對(duì)應(yīng)的行*/
while ($i<$p1)
{$i++;
$ra=mysql_fetch_row($mr);
if (! $ra) break;}
?>
<center>
<table border=0 width=732 class="unnamed1">
<tr align="center" valign="top" bgcolor="#FFFFCC">
<td width="186" >最新回應(yīng)時(shí)間
<td width="88">發(fā)表人
<td width="414">主題
<td width="44">回應(yīng)數(shù)
</tr>
<?
$x[0]="ffffcc";$x[1]="DEEFFF";$i=1;
while ($ra) /*顯示目前的主題*/
{$ys_c=$i%2;
print("<tr height=12 bgcolor=#".$x[$ys_c]."><td align=center>".$ra[1]);
print("<td align=center><a href=mailto:".$ra[7].">".$ra[6]."</a>");
print("<td>");
printf("<a href=index.php?fl=%s>%s</a>",$ra[0],$ra[2]);
print("<td align=center>".$ra[8]);
print("</tr>");
$ra=mysql_fetch_row($mr);
$i++;
if ($i>15) break;
}
?>
</table></center>
<form action=index.php method=get name=F0 onsubmit="document.F0.p.value--;return true;">
<span class=unnamed1>
<?
$alllines=mysql_affected_rows($m);
$pages=$alllines/15;
if ($pages-intval($pages)!=0) $pages=intval($pages)+1;
else $pages=intval($pages);
print("共".$pages."頁(yè) 第".($p+1)."頁(yè) ");
if ($p>0) {printf("<a href=index.php?fl=%s>首頁(yè)</a> ",$hf_fl);
printf("<a href=index.php?fl=%s&p=%d>上一頁(yè)</a> ",$hf_fl,$p-1);}
if ($ra) {printf("<a href=index.php?fl=%s&p=%d>下一頁(yè)</a> ",$hf_fl,$p+1);
printf("<a href=index.php?fl=%s&p=%d>末頁(yè)</a> ",$hf_fl,$pages-1);}
?>指定第<input type=text size=2 name=p>頁(yè)
</span>
<span class=unnamed1>
<?if ($hf_fl!=1) {printf("<br><a href=index.php?fl=%s>上一級(jí)</a> ",$lastid);
print("<a href=index.php>最高級(jí)</a><br>");}
?>
</form><center>
<table width=80% bgcolor=#eeeeff><tr><td class=unnamed1>
<?print(($fl==1)?"加新貼:":"回應(yīng):");?>
<form action="addnew.php" method=post name="F1">
姓名:
<input type="text" name="nm" size="15">
<br>
Email:
<input type="text" name="em" size="45">
<br>
標(biāo)題(必填):
<input type="text" name="tt" size="45" <?if ($fl!=1) print("value=回復(fù):".$alltt);?> >
<input type=hidden name="fl" value="<?print($hf_fl);?>">
<input type=hidden name="p" value="<?print($p);?>">
<br>
正文(必填): <br>
<textarea name="zw" cols="50" rows="10"></textarea>
<input type="submit" name="Submit" value="提 交">
</form>
</tr></table></center>
<hr>
<center>自用論壇程序0.25版 設(shè)計(jì)工具:PHP+MYSQL<br>
<a href=mailto:fhl@cgi.hnpts.ha.cn>古鉞青劍</a> 制作<br><a href=http://www.fhlfox.dhs.org>逍遙飛狐多媒體作坊</a> 2000 </center>
</span>
</body>
</html>
addnew.php:
<?$m=mysql_connect("localhost","×××","×××××");
mysql_select_db("×××××",$m);
$zw=ereg_replace("<","<",$zw);
$zw=ereg_replace(">",">",$zw);
$zw=ereg_replace("n","<br>",$zw);
$zw=ereg_replace(" "," ",$zw);
$tt=ereg_replace("<","<",$tt);
$tt=ereg_replace(">",">",$tt);
if ($nm=="") $nm="無(wú)名寶";
if ($em=="") {$nm.="<-- 是一只沒(méi)有MAIL的菜鳥(niǎo)";$em="No";}
$err=strlen($tt)*strlen($zw);
if ($err==0)
$msg="<font color=red>不要偷懶嘛!把表格填完再提交不遲。</font>";
else {$q="insert into yxforum (dt,tp,ct,fl,ip,un,em,num) values"
."(now(),"".$tt."","".$zw."",".$fl.","".$REMOTE_ADDR."","".$nm."","".$em."",0)";
mysql_query($q,$m);
$q="select num,fl from yxforum where id=".$fl;
$fl_a=$fl;
do { $mr=mysql_query($q,$m);
$ra=mysql_fetch_row($mr);
$num=$ra[0]+1;
$q="update yxforum set dt=now(),num=".$num." where id=".$fl;
$fl=$ra[1];
mysql_query($q,$m);
$q="select num,fl from yxforum where id=".$fl;
} while ($fl>0);
$msg="<font color=green>你的意見(jiàn)已經(jīng)成功提交!</font>";
}
?>
<html>
<head>
<script language="Javascript">
function go()
{document.location="index.php?fl=<?print($fl_a);?>&p=<?print($p)?>";
}
</script>
<body onload="setTimeout('go()',3000);">
<?print($msg);?><br>
系統(tǒng)將在3秒鐘以后自動(dòng)返回。如果不能返回或者你著急,請(qǐng)按<a href=index.php?fl=<?print($fl_a);?>&p=<?print($p)?>>這里</a>
</body>