Home  >  Article  >  php教程  >  一个简洁的多级别论坛

一个简洁的多级别论坛

WBOY
WBOYOriginal
2016-06-13 12:38:35958browse

本论坛总共用了不到200行代码,执行速度相当快。运行例子在:http://www.hnpts.ha.cn/forum
MYSQL数据库: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:  

  

  
  
  
  
$m=mysql_connect("localhost","××××","××××");  
  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]);?>  

  
$alltt=$ra[2];  
   $lastid=$ra[4];   
   print("
".$ra[3]."
");  
   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    {$i++;  
     $ra=mysql_fetch_row($mr);  
     if (! $ra) break;}  

    
?>  
  
    
       
        
  
  $x[0]="ffffcc";$x[1]="DEEFFF";$i=1;  
  while  ($ra)  /*显示目前的主题*/  
    {$ys_c=$i%2;  
     print("");  
     $ra=mysql_fetch_row($mr);  
     $i++;   
     if ($i>15) break;     
  }   

?>  
最新回应时间  
      
发表人  
      
主题  
      
回应数  
     
".$ra[1]);  
     print("
".$ra[6]."");  
     print("
");  
     printf("%s",$ra[0],$ra[2]);  
     print("
".$ra[8]);  
     print("
  
  
  
  
$alllines=mysql_affected_rows($m);  
$pages=$alllines/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);}  
?>指定第页  
  
  
上一级 ",$lastid);  
                  print("最高级
");}  
?>  
  
  
  
  
姓名:   
      
    
  
    Email:   
      
    
  
    标题(必填):  
     >  
      
      
     
  
    正文(必填):
  

     
      
  
  

  
自用论坛程序0.25版 设计工具:PHP+MYSQL
  
古钺青剑 制作
逍遥飞狐多媒体作坊 2000
  
  
  
  



addnew.php:  

$m=mysql_connect("localhost","×××","×××××");  
  mysql_select_db("×××××",$m);  
  $zw=ereg_replace("   $zw=ereg_replace(">",">",$zw);  
$zw=ereg_replace("n","
",$zw);  
   $zw=ereg_replace(" "," ",$zw);  
   $tt=ereg_replace("   $tt=ereg_replace(">",">",$tt);  
     if ($nm=="") $nm="无名宝";  
  if ($em=="") {$nm.="  $err=strlen($tt)*strlen($zw);  
  if ($err==0)   
     $msg="不要偷懒嘛!把表格填完再提交不迟。";  
  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="你的意见已经成功提交!";  
        }  
?>  
  
  
  
  

  
系统将在3秒钟以后自动返回。如果不能返回或者你着急,请按&p=>这里  
 
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn