>  기사  >  php教程  >  一个在PHP中利用递归实现论坛分级显示的例子(为了简单起见,我将分页显示部分去掉了)

一个在PHP中利用递归实现论坛分级显示的例子(为了简单起见,我将分页显示部分去掉了)

WBOY
WBOY원래의
2016-06-21 09:08:171084검색

递归|分页|显示

/*存放帖子的表结构
CREATE TABLE announce (
   announce_id int(11) NOT NULL auto_increment,
   board_id smallint(6) NOT NULL,
   title varchar(100) NOT NULL,
   content tinytext,
   add_time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
   auth_name varchar(20) NOT NULL,
   auth_mail varchar(40),
   hit_count smallint(6) NOT NULL,
   bytes mediumint(9) NOT NULL,
   parent_id tinyint(4) NOT NULL,
   auth_ip varchar(15) NOT NULL,
   top_id int(11) NOT NULL,
   return_count tinyint(4) NOT NULL,
   face char(3) NOT NULL,
   PRIMARY KEY (announce_id),
   KEY board_id (board_id),
   KEY top_id (top_id)
);
*/

function show_announce($id,$self_id){
    global $dbconnect;
    global $board_id;
    $query="select * from announce where announce_id='$id'";
    $result=mysql_query($query,$dbconnect);
    $myrow=mysql_fetch_array($result);
    mysql_free_result($result);
    echo "

  • \n";
        echo "一个在PHP中利用递归实现论坛分级显示的例子(为了简单起见,我将分页显示部分去掉了) ";
        if($self_id!=$id)
            echo "";
        echo $myrow[title];
        if($self_id!=$id)
            echo "
    ";
        echo " - 【".$myrow[auth_name]."】 ".$myrow[add_time]." [id:$myrow][announce_id] 点击:$myrow[hit_count]] ($myrow[bytes] Bytes) ($myrow[return_count])\n";
        $query="select announce_id from announce where parent_id='$id' order by announce_id desc";
        $result=mysql_query($query,$dbconnect);
            echo "
      \n";
          while($myrow=mysql_fetch_array($result)){
              show_announce($myrow[announce_id],$self_id);
          }
              echo "
    \n";
        mysql_free_result($result);
        echo "
  • ";
    }
    ?>




        璁哄
    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    이전 기사:php ajax入门与试用다음 기사:PHP接口的学习教程