Author Topic: Verschachtelte Navigation aus MySQL Datanbenk  (Read 1216 times)

0 Members and 1 Guest are viewing this topic.

rehmaster

  • Guest
Verschachtelte Navigation aus MySQL Datanbenk
on: Sun, 05. June 2005 - 17:48:22
Ich habe folgendes Problem Aus 2 MySQL Tabellen will ich eine Navigation (kategorie,bereich)

Die Struktur sieht nachher so aus:

-kategorie
 |- bereich
 |- bereich
-kategorie
 |- bereich
 |- bereich
 |- bereich

Folgendes habe ich schon gemacht:

navigation.php :
Code: [Select]
?php
  
require_once vLIB/vlibTemplate.php;
include _connect.inc.php;


     tmpl = new vlibTemplatetmpl/navigation.html;

        select = SELECT kategorie.id, kategorie.bezeichnung AS k_bezeichnung, kategorie.icon, bereich.id, bereich.bezeichnung AS b_bezeichnung, bereich.icon FROM kategorie INNER JOIN bereich ON kategorie.id = bereich.kategorie_id GROUP BY kategorie.id;
        
       // select = SELECT bezeichnung FROM kategorie;
                
     result = mysql_db_querydb, select, connect or dieerror in mysql request.mysql_error;
        
     tmpl-setvartitle,navigation;
     tmpl-setdbloopnavigation, result;

     tmpl-pparse;

?

navigation.html :
Quote
<DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
 <title>{tmpl_var name="title"}</title>
 <link rel="stylesheet" type="text/css" href="tmpl/style/style.css" />
</head>

<body class="navigation">

<div class="navigation">

 <tmpl_loop name="navigation">
 
  --<tmpl_var name="__ROWNUM__">--
 
   <em class="navigation"><tmpl_var name="navigation.k_bezeichnung"></em>
     <ul class="subnavigation">
     <tmpl_loop name="inner">
      <li class="subnavigation">sub <tmpl_var name="XXX"></li>
      </tmpl_loop>
     </ul>
     
  </tmpl_loop>
   
</div>


</body>
</html>

Bei der Kategorie wird nicht alles ausgegeben und bei der Rubrik wird �berhaupt nichts ausgegeben. habe dort ein XXX gesetzt, da ich schon mit verschiedenen M�glichkeiten nichts erreicht habe

Vielen Dank schon einmal f�r die Hilfe

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Verschachtelte Navigation aus MySQL Datanbenk
Reply #1 on: Sun, 05. June 2005 - 18:04:14
Dein LOOP ist falsch aufgebaut. Es gibt in Deinem LOOP-Array kein "inner" bzw. kein inner. Au�erdem ist es nicht m�glich �ber einen SETDBLOOP zwei LOOPs im Template zu f�llen.

Ein Beispiel, wie man das anstellen kann, findest Du beim Gruppenwechsel. Ob Du das bei Dir so anwenden m�chtest, ist dann eine andere Sache, aber ich finde es bietet sich an.

Bitte versuche Dein Skript so umzu�ndern, dass mit den Gruppenwechselstrukturen �bereinstimmt. Dann sollte es klappen.

Gru�
Claus
Last Edit: Sun, 05. June 2005 - 18:08:04 by ClausVB

rehmaster

  • Guest
Verschachtelte Navigation aus MySQL Datanbenk
Reply #2 on: Sun, 05. June 2005 - 18:17:22
Der kann die DB wohl nciht �ffnen
W�re nett, wenn Du das umstrickst Bin noch nicht so ganz firm mit dem Templatesystem

Dank Dir schon einmal

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Verschachtelte Navigation aus MySQL Datanbenk
Reply #3 on: Mon, 06. June 2005 - 09:38:03
Quote
Der kann die DB wohl nciht �ffnen
W�re nett, wenn Du das umstrickst Bin noch nicht so ganz firm mit dem Templatesystem
Mein Beispiel l�uft einwandfrei. Die DB kann ge�ffnet werden.

Ich werde sicher nicht, irgendetwas f�r Dich umschreiben. Ich finde Deinen netten Befehl (denn es fehlt das Wort "bitte") ziemlich unversch�mt. Ich werde auch keine DB-Struktur f�r Dich erstellen, damit ich Dein Beispiel ausprobieren und ab�ndern kann.
Wie man den  Regeln f�r dieses Forum entnehmen kann, muss jeder L�sungsvorschlag ausprobiert werden, um weitere Hilfe zu erhalten. Seine Hausaufgaben muss hier jeder selbst machen.

Gru�
Claus

rehmaster

  • Guest
Verschachtelte Navigation aus MySQL Datanbenk
Reply #4 on: Mon, 06. June 2005 - 17:42:01
Sorry, wenn das von mir falsch r�berkam

Ich hatte dich in Deinem Post falsch verstanden, deshalb hab ich das mit dem "w�re nett..." geschrieben

Will mir auch nciht alles vorlegen lassen Gestern klappte die DB Anfrage aber wirklich nicht
Nochmal Sorry, wenn das wirklich so falsch r�berkam von mir

rehmaster

  • Guest
Verschachtelte Navigation aus MySQL Datanbenk
Reply #5 on: Mon, 06. June 2005 - 18:58:52
Problem gel�st

Hier, f�r die, die auch eine l�sung brauchen:

Code: [Select]
?php
require_once vLIB/vlibTemplate.php;
include _connect.inc.php;

tmpl = new vlibTemplatetmpl/navigation.html;

select_k = SELECT id, bezeichnung, icon FROM kategorie; � � � �
result_kategorie = mysql_db_querydb, select_k, connect or dieerror in mysql request . mysql_error;
anzahl_k = mysql_num_rowsresult_kategorie;

fori = 0; i anzahl_k; i++
{
 � � �row_k = mysql_fetch_assocresult_kategorie;
 � � �
 � � �navigationik_id = row_kid;
 � � �navigationik_bezeichnung = row_kbezeichnung;
 � � �navigationik_icon = row_kicon;
 � � �
 � � �bezeichnung_id = row_kid;

 � � �echoi - anzahl_k nbr;

 � � �select_b = SELECT id, bezeichnung, icon
           FROM bereich WHERE kategorie_id = .bezeichnung_id.;
 � � �result_bereich = mysql_db_querydb, select_b, connect
           or dieerror in mysql request . mysql_error;
 � � �anzahl_b = mysql_num_rowsresult_bereich;
 � � �
 � � �forj = 0; j anzahl_b; j++
 � � �{
 � � � � row_b = mysql_fetch_assocresult_bereich;
 � � � �
 � � � � bereichajb_id = row_bid;
 � � � � bereichajb_bezeichnung = row_bbezeichnung;
 � � � � bereichajb_icon = row_bicon;
 � � �}

 � � �navigationisubnavigation = bereicha;
}

tmpl-setvartitle, navigation;
tmpl-setloopnavigation, navigation;

tmpl-pparse;
?

edit: Ich habe den Source-Code ordentlich einger�ckt. Danke f�r das posten der L�sung.
Last Edit: Mon, 06. June 2005 - 19:23:32 by ClausVB