PHP 開発分類 テクノロジー...LOGIN

PHP 開発分類 テクノロジー接続 ナビゲーション スタイル分類

このセクションでは、同様のリンク ナビゲーション スタイルを作成します

例: [写真]>>[車の写真]>>メルセデス ベンツの写真>>メルセデス ベンツ C260 の写真。

データベースとテーブルの作成については前の章で説明されているため、このセクションでは詳しく説明しません

考え方は基本的に前の章のドロップダウン メニューと同じです:

getCatePath 関数を作成します。 SQL ステートメントを実行して ID をクエリし、クエリされた ID を介して別の ID 値を入力して、さまざまな数のナビゲーションを表示できます。

krsort 関数を使用して出力を反転するには、カスタム関数 getCatePath を使用します。

<?php
function getCatePath($cid, &$result = array()) {
  global $link;
  $sql="SELECT * FROM class where id = $cid";
  $rs = mysqli_query($link,$sql);
  $row = mysqli_fetch_assoc($rs);
  if ($row) {
    $result[] = $row;
    getCatePath($row['pid'], $result);
  }
  krsort($result); //krsort对数组按键名逆向
  return $result;
}
?>

displayCatePath関数を作成して、foreachループを使用して出力し、「>>」スタイルを追加します

<?php
header("content-type:text/html;charset=utf8");

$link = mysqli_connect('localhost','username','password','test');
mysqli_set_charset($link, "utf8");
if (!$link) {
 die("连接失败:".mysqli_connect_error());
}

function getCatePath($cid, &$result = array()) {
    global $link;
    $sql="SELECT * FROM class where id = $cid";
    $rs = mysqli_query($link,$sql);
    $row = mysqli_fetch_assoc($rs);
    if ($row) {
        $result[] = $row;
        getCatePath($row['pid'], $result);
    }
 krsort($result); //krsort对数组按键名逆向
 return $result;
}
function displayCatePath($cid,$url='fen.php?cid=') { //fen.php为当前执行程序的PHP页面
    $res = getCatePath($cid);
    $str = '';
    foreach ($res as $key => $val) {
        $str.= "<a href={$url}{$val['id']}>>{$val['title']}</a>>";
     }
     return $str;
}
    echo displayCatePath(7); //输出当前的id为7
?>


<?php header("content-type:text/html;charset=utf8"); $link = mysqli_connect('localhost','username','password','test'); mysqli_set_charset($link, "utf8"); if (!$link) { die("连接失败:".mysqli_connect_error()); } function getCatePath($cid, &$result = array()) { global $link; $sql="select * from class where id = $cid"; $rs = mysqli_query($link,$sql); $row = mysqli_fetch_assoc($rs); if ($row) { $result[] = $row; getCatePath($row['pid'], $result); } krsort($result); //krsort对数组按键名逆向 return $result; } function displayCatePath($cid,$url='fen.php?cid=') { //fen.php为当前执行程序的PHP页面 $res = getCatePath($cid); $str = ''; foreach ($res as $key => $val) { $str.= "<a href={$url}{$val['id']}>>{$val['title']}</a>>"; } return $str; } echo displayCatePath(7); ?>
コースウェア