Esempio n. 1
0
function category_children($id_parent = 0, $level = 1, $db_connexion)
{
    static $last;
    $statement = $db_connexion->prepare("SELECT * FROM categorie where id_parent=:parent AND niveau=:niveau;");
    $statement->execute(array(":parent" => $id_parent, ":niveau" => $level));
    $categories = $statement->fetchAll();
    $level++;
    if ($categories) {
        foreach ($categories as $key => $categorie) {
            // répéte autant de fois la chaine '═'
            $plus = "├" . str_repeat('─', $level - 1);
            if ($level == 2 && $key === 0) {
                $plus = str_replace("├", "┌", $plus);
            }
            echo "<li>" . $plus . " <a href='" . $_SERVER["PHP_SELF"] . "?id=" . $categorie["id_categorie"] . "'>" . utf8_encode($categorie["nom"]) . "</a></li>";
            $query = "SELECT * FROM categorie WHERE id_parent=:id_categorie AND niveau=:level";
            $statement = $db_connexion->prepare($query);
            $statement->bindParam(":id_categorie", $categorie["id_categorie"]);
            $statement->bindParam(":level", $level);
            // Liaison param :level , et $level
            $statement->execute();
            // Execution de la requête préparée
            $results = $statement->fetchAll();
            // Méthode fetch de l'objet statement
            if ($results) {
                category_children($categorie["id_categorie"], $level, $db_connexion);
            } else {
                $last = $categorie["id_categorie"];
            }
            // Appel à la fonction d'une manière récursive
        }
    }
}
Esempio n. 2
0
                <div class="left"><a href="index.php">logo</a></div>
                <div class="right">
                    <?php 
echo $out;
?>
                </div>
            </div>
            <?php 
$where = isset($_GET['id']) ? "where id_categorie =" . $_GET["id"] : " where 1";
echo "<div class='col-md-3'>\r\n          <ul>";
try {
    $statement = $db_connexion->prepare("SELECT max(niveau) as max FROM categorie ");
    $statement->execute();
    $level = $statement->fetch();
    $maxLevel = $level["max"];
    category_children(0, 1, $db_connexion);
    // niveau de départ
} catch (PDOException $e) {
    echo $e->getMessage();
}
echo "</ul>\r\n        </div>";
echo "<div class='col-md-9'>";
if (isset($_GET["id"])) {
    // Recupperation de l'id produit
    $id = $_GET["id"];
    $produit = edit_product($id, $db_connexion);
    if (isset($_POST["btn-cart"])) {
        // envoi du formulaire
        if (!empty($_POST["qty"]) && is_numeric($_POST["qty"])) {
            // Validation de qty doit etre numerique
            if (!isset($_SESSION["cart"])) {