ホームページ  >  記事  >  バックエンド開発  >  簡潔なマルチレベルのフォーラム_PHP チュートリアル

簡潔なマルチレベルのフォーラム_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:02:40792ブラウズ

このフォーラムで使用するコードは合計 200 行未満で、実行速度は非常に高速です。実行例子在:http://www.hnpts.ha.cn/forum
MYSQLデータベース库:yxforum
+-------+--------------+--- ---+-----+--------+----------------+
|フィールド | 「 |」と入力します。ヌル |キー |デフォルト |追加 |  
+----------+--------------+-----+-----+---------+-- ----------+
| id | int(11) |      |プリ | 0 |自動インクリメント |  
| dt |日時 |はい |     | NULL |                |  
| tp | varchar(255) |はい |     | NULL |                |  
| ct |テキスト |はい |     | NULL |                |  
|フロリダ | int(11) |はい |     | NULL |                |  
| ip | varchar(20) |はい |     | NULL |                |  
|アン | varchar(50) |はい |     | NULL |                |  
| em | varchar(60) |はい |     | NULL |                |  
|番号 | int(11) |はい |     | NULL |                |  
+----------+--------------+-----+-----+---------+-- ----------+

index.php:

  
  
  
  
  
mysql_select_db("××××",$m);  
?>  

$hf_fl=$fl;  
$q="select * from yxforum where id=".$fl;  
$mr=mysql_query($q,$m);  
$ra=mysql_fetch_row($mr);  
?>  


  
?>  
%s) ",$ra[7],$ra[6]);?>  

  
$lastid=$ra[4];   
print("
< /table><");  
print("
跟随主题:");  
}

$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; /*ジャンプ指定の页数对应的行*/
while ($i<$p1)
{$i++;  
$ra=mysql_fetch_row($mr);  
if (! $ra) Break;}


?>  
  
".$ra[3]."
  
   
  
  
$x[0]="ffffcc";$x[1]="DEEFFF";$i=1;  
while ($ra) /*表示前の主题*/
{$ys_c=$i%2;  
print("");  
$ra=mysql_fetch_row($mr);  
$i++;   
if ($i>15) ブレーク;     
}   

?>  
最新回应時間间
発行表人
主题
回应数
".$ra[1]);  
print("
".$ra[6]."");  
print("
");  
printf("%s",$ra[0],$ra[2]);  
print("
".$ra[8]);  
print("
  
  
<スパンクラス=unnamed1>  
  
$alllines=mysql_affected_rows($m);  
$ページ=$全行数/15;  
if ($pages-intval($pages)!=0) $pages=intval($pages)+1;  
else $pages=intval($pages);  
print("共".$pages."页第".($p+1)."页 ");  

if ($p>0) {printf("首页 ",$hf_fl);  
printf("上一页 ",$hf_fl,$p-1);}
if ($ra) {printf( "下一页 ",$hf_fl,$p+1);  
printf("末页 ",$hf_fl,$pages-1);}
?>第<入力タイプを指定=text size=2 name=p>页
  
<スパンクラス=unnamed1>  
上一级 ",$lastid);  
print("最高级
");}  
?>  
  
<表幅=80% bgcolor=#eeeeff>  
  
  
姓名:
  

  
メール:
  

  
标题(必須):
>  
  
  

  
正文(必須):
  

  
  
  
  
  
自用论坛程序0.25版 设计ツール:PHP+MYSQL
  
古钺青剑 制作
逍遥飞狐多メディア作坊 2000   
  
  
  



addnew.php:

mysql_select_db("×××××",$m);  
$zw=ereg_replace("<","<",$zw);  
$zw=ereg_replace(">gt;",">gt;",$zw);  
$zw=ereg_replace("n","
",$zw);  
$zw=ereg_replace(" "," ",$zw);  
$tt=ereg_replace("<","<",$tt);  
$tt=ereg_replace(">gt;",">gt;",$tt);  
if ($nm=="") $nm="無名宝";  
if ($em=="") {$nm.="<-- 是一只無しMAIL的菜鸟";$em="いいえ";}
$err=strlen($tt)*strlen($ zw);  
if ($err==0)
$msg="不要偷懒嘛!表格の再提示は完了しません。";
else {$q="yxforum (dt,tp,ct,fl,ip,un,em,num) 値に挿入します"
."(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="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;
}しながら($fl>0);


$msg="你的意见成功提交!";

?>
<頭> ;


< ;br>
システムは 3 秒後に自動的に戻ります。戻れない場合、または転送できない場合は、&p=< ?print($p)?>>这里
 

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/316502.html技術記事このスクリプトは 200 行に達しないコードを使用しており、実行速度はかなり高速です。 ----------+------+-----+------...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。