IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[phplib] Affichage avec blocs imbriqués


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre actif Avatar de elcoyotos
    Homme Profil pro
    Amateur passionné
    Inscrit en
    Octobre 2006
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Amateur passionné

    Informations forums :
    Inscription : Octobre 2006
    Messages : 490
    Points : 294
    Points
    294
    Par défaut [phplib] Affichage avec blocs imbriqués
    Salut à tous !!!

    Alors voilà, j'ai un petit problème d'affichage.
    Je débute avec les template et utilise phplib v 1.5.
    Le problème porte sur le menu de droite en dessous de Rechercher.


    Voilà ce que j'obtiens : http://libre.arizona-dream.com/index.php
    Voilà ce que je souhaiterai obtenir http://libre.arizona-dream.com/index2.php

    Voici le code source de ce que j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    <?php
    // Connexion à la base de données
    include ("connexion.php");
     
     
    // ************** Requetes **************
    // Configuration
    $sql_configuration = "SELECT * FROM configuration";
    $result_configuration = mysql_query ( $sql_configuration, $conn );
    $row_configuration = mysql_fetch_assoc( $result_configuration );
     
    // Page d'accueil
    $sql_page_accueil = "SELECT * FROM page_accueil WHERE idpage_accueil='1'";
    $result_page_accueil = mysql_query ( $sql_page_accueil, $conn );
    $row_page_accueil = mysql_fetch_assoc( $result_page_accueil );
     
    // Catégories
    $sql_categories = "SELECT * FROM categories";
    $result_categories = mysql_query ( $sql_categories, $conn );
     
     
    // Insertion de la classe
    include "inc/classes/template.inc";
     
    // Création du template
    $template = new template(".");  
     
     // Indication du fichier tpl servant de modèle 
    $template->set_file("index","inc/template/default/index.tpl");  
     
    // ************** Conversion caractères spéciaux  **************
    // Titre du site
    $titre_du_site = htmlentities($row_configuration['titre_du_site']);
    // Titre de la page d'accueil
    $titre_accueil = htmlentities($row_page_accueil['titre_accueil']);
    // Contenu de la page d'accueil
    $contenu_a_afficher = htmlentities($row_page_accueil['contenu_accueil']);
     
    // ************** BB CODE **************
    include ("inc/bbcode.php");
     
     
     
    // ************** Assignation des variables **************
    // Titre du site
    $template->set_var("TITRE_DU_SITE", $titre_du_site);
    // Url du site
    $template->set_var("URL_DU_SITE", "http://".$_SERVER["SERVER_NAME"]."/");
    // Titre de la page d'accueil
    $template->set_var("TITRE_ACCUEIL", $titre_accueil);
    // Contenu de la page d'accueil
    $template->set_var("CONTENU_ACCUEIL", nl2br($contenu_a_afficher));
    // Description de la page d'accueil
    $template->set_var("DESCRIPTION_ACCUEIL", $row_page_accueil['description_accueil']);
    // Mots clés de la page d'accueil
    $template->set_var("MOTS_CLES_ACCUEIL", $row_page_accueil['mots_cles_accueil']);
     
    // ************** Déclaration des boucles pages et catégories  **************
    $template->set_block("index","BOUCLE_CATEGORIES_BOUCLE_PAGES","boucle_pages");
    $template->set_block("index","BOUCLE_CATEGORIES","boucle_categories");
    while ( $row_categories = mysql_fetch_assoc( $result_categories )) {
     
        // Nom de la catégorie
        $template->set_var("CATEGORIE",$row_categories['nomcat']);
        // Remplacement du bloc simple {CATEGORIE} par sa valeur dans le bloc boucle BOUCLE_CATEGORIES
        $template->parse("boucle_categories", "BOUCLE_CATEGORIES", true);
     
          $categorie = $row_categories['idcat'];
        // Requete pages
        $sql_pages = "SELECT * FROM pages WHERE cat_id =\"$categorie\" AND afficher='o'";
        $result_pages = mysql_query ( $sql_pages, $conn );
        while ( $row_pages = mysql_fetch_assoc( $result_pages )) {
     
            // Titre de la page
            $template->set_var("PAGE",$row_pages['titre']);
            // ID de la page
            $template->set_var("IDPAGE",$row_pages['idpage']);
            // Remplacement du bloc simple {PAGE} par sa valeur dans le bloc boucle BOUCLE_CATEGORIES_BOUCLE_PAGES
            $template->parse("boucle_pages", "BOUCLE_CATEGORIES_BOUCLE_PAGES", true);
        }
    }
     
    // Traitement de la page entière
    $template->parse("parse", "index");
     
    // Affichage de la page
    $template->p("parse");
    ?>

    Ce que je ne comprends pas c'est que j'ai fait la même requete dans les deux exemples ????

    Ce que j'obtiens : http://libre.arizona-dream.com/index.php
    Ce que je souhaiterai obtenir : http://libre.arizona-dream.com/index2.php



    Bien sûr, j'ai chercher sur le forum, sur google mais sans résultat. Après plusieurs heures passées sur ce code, je m'en remet à votre savoir.Haaaa si quelqu'un avait une réponse ......
    Écoute, sinon ta langue te perdra (proverbe Navajo)

  2. #2
    Membre actif Avatar de elcoyotos
    Homme Profil pro
    Amateur passionné
    Inscrit en
    Octobre 2006
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Amateur passionné

    Informations forums :
    Inscription : Octobre 2006
    Messages : 490
    Points : 294
    Points
    294
    Par défaut J'ai fini par trouver la solution !!!
    Pour ceux que cela pourrait interessé :

    Remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    // ************** Déclaration des boucles pages et catégories **************
    $template->set_block("index","BOUCLE_CATEGORIES_BOUCLE_PAGES","boucle_pages");
    $template->set_block("index","BOUCLE_CATEGORIES","boucle_categories");
    while ( $row_categories = mysql_fetch_assoc( $result_categories )) {
     
    // Nom de la catégorie
    $template->set_var("CATEGORIE",$row_categories['nomcat']);
    // Remplacement du bloc simple {CATEGORIE} par sa valeur dans le bloc boucle BOUCLE_CATEGORIES
    $template->parse("boucle_categories", "BOUCLE_CATEGORIES", true);
     
    $categorie = $row_categories['idcat'];
    // Requete pages
    $sql_pages = "SELECT * FROM pages WHERE cat_id =\"$categorie\" AND afficher='o'";
    $result_pages = mysql_query ( $sql_pages, $conn );
    while ( $row_pages = mysql_fetch_assoc( $result_pages )) {
     
    // Titre de la page
    $template->set_var("PAGE",$row_pages['titre']);
    // ID de la page
    $template->set_var("IDPAGE",$row_pages['idpage']);
    // Remplacement du bloc simple {PAGE} par sa valeur dans le bloc boucle BOUCLE_CATEGORIES_BOUCLE_PAGES
    $template->parse("boucle_pages", "BOUCLE_CATEGORIES_BOUCLE_PAGES", true);
    }
    }
    Par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    // ************** Déclaration des boucles pages et catégories  **************
    $template->set_block($nom_de_la_page,"BOUCLE_CATEGORIES_BOUCLE_PAGES","boucle_pages");
    $template->set_block($nom_de_la_page,"BOUCLE_CATEGORIES","boucle_categories");
    while ( $row_categories = mysql_fetch_assoc( $result_categories )) {
     
    	// Nom de la catégorie
    	$template->set_var("CATEGORIE",$row_categories['nomcat']);
     
      	$categorie = $row_categories['idcat'];
    	// Requete pages
    	$sql_pages = "SELECT * FROM pages WHERE cat_id =\"$categorie\" AND afficher='o'";
    	$result_pages = mysql_query ( $sql_pages, $conn );
    	while ( $row_pages = mysql_fetch_assoc( $result_pages )) {
     
    		// Titre de la page
    		$template->set_var("PAGE",$row_pages['titre']);
    		// ID de la page
    		$template->set_var("IDPAGE",$row_pages['idpage']);
    		// Remplacement du bloc simple {PAGE} par sa valeur dans le bloc boucle BOUCLE_CATEGORIES_BOUCLE_PAGES
    		$template->parse("boucle_pages", "BOUCLE_CATEGORIES_BOUCLE_PAGES", true);
    	}
    	// Affichage des  2 blocs
    	$template->parse("boucle_categories", "BOUCLE_CATEGORIES", true);
    	$template->set_var("boucle_pages","");
    }
    Écoute, sinon ta langue te perdra (proverbe Navajo)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHPLIB] Blocs imbriqués
    Par manugatlin dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 18/10/2010, 13h25
  2. Problème affichage de bloc avec curseur
    Par brad1024 dans le forum Forms
    Réponses: 5
    Dernier message: 24/10/2008, 16h58
  3. Pb d'affichage avec des logic:iterate imbriqués
    Par mariemor64 dans le forum Struts 1
    Réponses: 8
    Dernier message: 20/07/2006, 15h44
  4. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 09h21
  5. Problème d'affichage avec trace
    Par WriteLN dans le forum Flash
    Réponses: 10
    Dernier message: 22/10/2003, 16h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo