header("Content-type:text/html;charset=utf-8"); $db=new mysqli("localhost","root","","news_php100") ; //实例化一个数据库连接。使用这个前一定要确保已经加载了mysqli类库,或者用mysql_connect这个方式连接。 if(mysqli_connect_errno()){echo "链接失败:".mysqli_connect_error(); exit(); }
- $db->query("set names utf8");
- $result=$db->query("select name from class where f_id=0"); //查找f_id=0的分类,也就是查找每一个大类。
- while($row=$result->fetch_assoc()){
- echo $row[‘name‘]."<br>"; //这样就把每个大类循环出来了。
- }
- //同样我们可以把新闻的子类循环出来。
- $result=$db->query("select * from class where f_id=1"); //查找f_id=1的分类,也就是查找‘新闻’的子类。
- while($row=$result->fetch_assoc()){
- echo $row[‘name‘]."
- $result=$db->query("select * from class");
- while($row=$result->fetch_assoc()){
- $arr[]=array($row[id],$row[f_id],$row[name]); //每一行保存一个分类的id,f_id,name的信息。
- }
- function fenlei($f_id=0){ //$f_id初始化为0,也就是从最大分类开始循环.
- global $arr; //声明$arr为全局变量才可在函数里引用。
- for($i=0;$i<count($arr);$i++){ //对每个分类进行循环。
- if($arr[$i][1]==$f_id){ //$arr[$i][1]表示第$i+1个分类的f_id的值。开始$f_id=0,也就是把f_id=0的分类输出来。
- <?
- .....
- .....
- //设置默认页
- if (emptyempty($func)) $func=="showtype";
- //设置父分类的 uid
- if (emptyempty($uid)) $uid=0;
- //数据库存储************************************************
- if ($func=="save"):
- $fields = "";
- $values = "";
- if ($id!="") {
- $fields .= ",id";
- $values.=",$id";
- }
- if ($uid!="") {
- $fields .= ",uid";
- $values.=",$uid";
- }
- if ($type!="") {
- $fields .= ",type";
- $values.=","$type"";
- }
- if ($route_id=="") {
- //取得父分类的 route_id
- if ($uid!=0) {
- $result = mysqlquery("select * from type where id=$uid");
- $route_id=mysql_result($result,0,"route_id");
- } else {
- $routr_id="0";
- }
- $fields .= ",route_id";
- //形成自己的 route_id
- $route_id="$route_id:$id";
- $values.=","$route_id"";
- }
- //形成自己的 route_char
- if ($route_char!="") {
- $fields .= ",route_char";
- $route_char="$route_char:$type";
- $values.=","$route_char"";
- } else {
- $fields .= ",route_char";
- $route_char=$type;
- $values.=","$route_char"";
- }
- $fields = substr($fields,1,strlen($fields)-1);
- $values = substr($values,1,strlen($values)-1);
- $result = mysqlquery("insert into type ($fields) values ($values)");
- ...
- endif; /* end save */
- //分类上传************************************************
- if ($func=="createtype"):
- //取得自己的 id
- $result = mysqlquery("select * from type order by
- id desc");
- $num=mysql_numrows($result);
- if (!emptyempty($num)) {
- $cat = mysql_result($result,0,"id");
- } else {
- $cat=0;
- }
- //判断分类的状态
- if ($uid != 0) {
- $result=mysql_query("select * from type where id=$uid");
- $type=mysql_result($result,0,"type");
- $route_char=mysql_result($result,0,"route_char");
- } else {
- $type="父分类";
- }
- echo "<FORM ACTION="$PHP_SELF?func=save" METHOD=POST>";
- echo "<table>";
- echo "<tr><td>所属类别:$type</td></tr>";
- echo "<tr><td>创建分类:<input type=text name="type" SIZE=10 MAXLENGTH=100></td></tr>";
- echo "<tr><td>";
- $cat=$cat+1;
- echo "<input type=hidden name=id value="$cat">";
- echo "<input type=hidden name=uid value="$uid">";
- echo "<input type=hidden name=route_char value="$route_char">";
- echo "<INPUT TYPE=submit NAME="Save" VALUE="保存"></td></tr>";
- echo "</table>";
- echo "</form>";
- endif; /* end createtype */
- //显示分类************************************************
- if ($func=="showtype"):
- echo "<table>";
- //判断分类的状态
- if ($uid!=0) {
- $result=mysql_query("select * from type where id=$uid");
- $type=mysql_result($result,0,"type");
- } else {
- $type="父分类";
- }
- echo "<tr><td><a href="$php_self?func=createtype&uid=$uid">创建分类</a></td></tr>";
- echo "<tr><td>$type</td></tr>";
- $result=mysql_query("select * from type where uid=$uid");
- $num=mysql_numrows($result);
- if (!emptyempty($num)) {
- for ($i=0;$i<$num;$i++) {
- $id=mysql_result($result,$i,"id");
- $type=mysql_result($result,$i,"type");
- echo "<tr><td>";
- echo "<a href="$php_self?func=showtype&uid=$id">$type</a>";
- echo "</td></tr>";
- }
- }
- echo "</table>";
- endif; /* end showtype */
- .....
- .....
- ?>