一个漂亮的输出MySql数据库表结构的PHP页面

From:  http://babyhe.blog.51cto.com/1104064/1118372
经常为了方便和直观,我们会首先直接在数据库中设计出表,但是接下来又要将表的结构和设计编写在设计文档中,以便编码的时候可以直观的查询,一旦数据库表非常多,字段非常多的时候,这无疑是件非常郁闷的工作。
这是一个漂亮的PHP页面,可以自动输出MySql数据库所有表结构,大大方便了文档的编写工作,也同时非常方便编码的时候进行查询。当然在设计MySql数据库表和字段的时候详细填写表和字段的备注,这是非常好的习惯,对这个网页的输出也是最佳效果的。

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< meta  http-equiv ="Content-Type"  content ="text/html; charset=utf-8"  />
< style  type ="text/css" >
<!--
body,table{
        font-size:13px;
}
table{
        table-layout:fixed;
        empty-cells:show; 
        border-collapse: collapse;
        margin:0 auto;
  border:1px solid #cad9ea;
}
th{
        height:22px;
  font-size:13px;
  font-weight:bold;
  background-color:#CCCCCC;
  text-align:center;
}
td{
        height:20px;
}
.tableTitle{font-size:14px; font-weight:bold;}

</style>
< title >zuizen数据库结构 </title>
</head>

< body >
< div  style ="margin:0 auto;width:880px; border:1px #006600 solid; font-size:12px; line-height:20px;" >
   < div  style ="width:100%;height:30px; font-size:16px; font-weight:bold; text-align:center;" >
  **网数据库结构 < br  />
   < font  style ="font-size:14px; font-weight:normal;" > < ?php echo date("Y-m-d h:i:s"); ? > </font>
   </div>
  <?php
  
  $dbconn=mysql_connect("localhost", "root","123");
  $sqlname="information_schema";
  mysql_select_db($sqlname,$dbconn);
  session_start();
  
  $sql = "SELECT * FROM tables where table_schema='db_zuizen' order by TABLE_NAME";
  $result = mysql_query($sql);    
  while($row=mysql_fetch_array($result))
  {
    //print_r($row);
  ?>  
   < div  style ="margin:0 auto; width:100%; padding-top:10px;" >
     < b  class ="tableTitle" >表名:  < ?php echo $row["TABLE_NAME"] ? >  </b>  < br  />
     < ?php echo $row["TABLE_COMMENT"] ? >
   </div>  
   < table  width ="100%"  border ="1" >
     < thead >
       < th  width ="70" >序号 </td>
       < th  width ="170" >字段名 </td>
       < th  width ="140" >字段类型 </td>
       < th  width ="80" >允许为空 </td>
       < th  width ="70" >默认值 </td>
       < th >备注 </td>
     </thead>
    <?php
    $sql2 = "SELECT * FROM columns where table_name='".$row["TABLE_NAME"]."' order by COLUMN_NAME";
    $result2 = mysql_query($sql2);    
    $num=0;
    while($row2=mysql_fetch_array($result2))
    {
      $num = $num+1;
      //print_r($row);
    ?>  
    
     < tr >
       < td  align ="center" > < b > < ?php echo $num ? > </b> </td>
       < td > < ?php echo $row2["COLUMN_NAME"] ? > </td>
       < td > < ?php echo $row2["COLUMN_TYPE"] ? > </td>
       < td  align ="center" > < ?php echo $row2["IS_NULLABLE"] ? > </td>
       < td  align ="center" > < ?php echo $row2["COLUMN_DEFAULT"] ? > </td>
       < td > < ?php echo $row2["COLUMN_COMMENT"] ? > </td>
     </tr>
    <?php
    }
    ?>
   </table>
  <?php 
  }
  mysql_close($dbconn);
  ?>

</div>
</body>
</html>

以下为运行抓取的样子:

<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(10) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值