Style de lien de navigation de classification infinie PHP

Schéma d'implémentation

面包屑.png

Style de lien de navigation :

<?php
include('conn.php');
function getCatePath($cid, &$result = array()) {
   $sql = "SELECT * FROM deepcate WHERE id=$cid";
   $rs = mysql_query($sql);
   $row = mysql_fetch_assoc($rs);
   if ($row) {
       $result[] = $row;
       getCatePath($row['pid'], $result);
   }
   krsort($result); //krsort对数组按键名逆向
   return $result;
}
?>

Explication du code :

Identique au style déroulant, créez la fonction getCatePath , Exécutez l'instruction SQL pour interroger l'identifiant et payez la valeur obtenue à $rs. Utilisez mysql_fetch_assoc pour obtenir le tableau et appelez son propre getCatePath pour interroger le pid et son propre identifiant.

Renvoyer $result, trier le tableau en utilisant la méthode inverse.

Continuez ensuite à embellir et à encapsuler.

<?php
include('conn.php');
function getCatePath($cid, &$result = array()) {
    $sql = "SELECT * FROM deepcate WHERE id=$cid";
    $rs = mysql_query($sql);
    $row = mysql_fetch_assoc($rs);
    if ($row) {
        $result[] = $row;
        getCatePath($row['pid'], $result);
    }
    krsort($result); //krsort对数组按键名逆向
    return $result;
}
function displayCatePath($cid,$url='cate.php?cid=') {
    $res = getCatePath($cid);
    $str = '';
    foreach ($res as $key => $val) {
        $str.= "<a href={$url}{$val['id']}>{$val['catename']}</a>>";
    }
    return $str;
}
echo displayCatePath(10);
?>

De cette façon, le style LINK de classification infinie est complété.


Difficultés de ce chapitre

1. Le style de lien part du nœud parent et recherche vers le bas ses nœuds descendants pour former une forme d'arborescence. Le pid est égal à l'identifiant du nœud précédent.

Formation continue
||
<?php include('conn.php'); function getCatePath($cid, &$result = array()) { $sql = "SELECT * FROM deepcate WHERE id=$cid"; $rs = mysql_query($sql); $row = mysql_fetch_assoc($rs); if ($row) { $result[] = $row; getCatePath($row['pid'], $result); } krsort($result); //krsort对数组按键名逆向 return $result; } function displayCatePath($cid,$url='cate.php?cid=') { $res = getCatePath($cid); $str = ''; foreach ($res as $key => $val) { $str.= "<a href={$url}{$val['id']}>{$val['catename']}</a>>"; } return $str; } echo displayCatePath(10); ?>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel