SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 25.04.2005, 15:29:13
Benutzerbild von Pixelschubser
Pixelschubser Pixelschubser ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 45
Datenbankabfrage Treemenü?

Hallo,

ich habe in meiner Datenbank eine ganze Menge Datensätze, daher möchte ich wenn ich Sie ausgebe, dies mit Kategorie --> Unterkategorie usw.. machen.

Also das man sich erst durch die Kategorien klickt bis Ende und dann erst die entsprechendn Datensätze angezeigt werden.

Datenbankaufbau (artikel):
id | datum | artikel_nummer | beschreibung | cat | cat1 | cat2 | cat3 | cat4 | hersteller | bestand | preis_einkauf

Die Spalten cat - cat4 sind die einzelnen Kategorien.
cat die Hauptkategorie -> cat4 letzte Kategorie.

Wie mache ich das am besten?
Habe es bis jetzt so das wenn man auf die Hauptkategorie(cat) klickt diese mit dem Link übergeben wird detail.php?cat=laufwerke
Dann soll die Seite detail.php alle unterkategorien ausliefern von Laufwerke.

Hoffe hab es verständlich erklären können.

Bin für jede Art von Tipp oder Hilfe dankbar.

-Pixelschubser-
__________________
Never change a running system!
Mit Zitat antworten
  #2  
Alt 25.04.2005, 15:46:01
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Datenbankabfrage Treemenü?

Vom Prinzip her, würde ich es an deiner Stelle so aufbauen:

Tabelle categories:
categoryid
parentcategoryid
name

Tabelle articles:
id
categoryid
.
.
.

Du speicherst also im Artikel nur noch ab, in welcher Kategorie der Artikel angezeigt werden soll.
In der Kategorietabelle speicherst du zu jeder Kategorie in der Spalte parentcategoryid ab, unterhalb welche Kategorie sich diese Kategorie befindet. Wenn eine Kategorie in der obersten Ebene liegt, speicherst du hier einfach eine 0.
Mit Zitat antworten
  #3  
Alt 25.04.2005, 19:07:37
Benutzerbild von Pixelschubser
Pixelschubser Pixelschubser ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 45
AW: Datenbankabfrage Treemenü?

Hi,

das hab ich auch schon überlegt, nur ich bekomme die Daten alle als csv Datei. Die lese ich dann in die DB ein.
Dann hab ich das Problem wie ich es mache, das in jede der Tabellen etwas eingetragen wird beim einlesen der Datei.

Per Hand ist das etwas umständlich, geht um etwa 10.000 Datensätze.
__________________
Never change a running system!
Mit Zitat antworten
  #4  
Alt 25.04.2005, 21:32:49
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Datenbankabfrage Treemenü?

In welchem Format sind die Daten denn in der CSV-Datei gespeichert?
Mit Zitat antworten
  #5  
Alt 26.04.2005, 07:18:42
Benutzerbild von Pixelschubser
Pixelschubser Pixelschubser ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 45
AW: Datenbankabfrage Treemenü?

Hi,

die Daten stehen so in der Datei:
Artikelnummer|Beschreibung|cat|cat1|cat2|cat3|cat4|EAN Nr.|Hersteller Kurzname|Kurzbeschreibung|Verfügbarkeit Text|Verkaufspreis|
1234567890|Super tolle HDD|Laufwerke|Festplatten|intern|3,5'|bis 100 GB|11|Western|keine da|10|10,10

Wobei in den Texten noch Sonderzeichen enthalten sind. Wie z.B. ', " und als äöü stehen auch Sonderzeichen.(ä=„ ”=ö ü=ein kasten) Die müssten vorher gefiltert werden.
__________________
Never change a running system!
Mit Zitat antworten
  #6  
Alt 26.04.2005, 09:26:28
Benutzerbild von Pixelschubser
Pixelschubser Pixelschubser ist offline
Anfänger
 
Registriert seit: Aug 2003
Beiträge: 45
AW: Datenbankabfrage Treemenü?

Okay,

ich habe es so weit hin. Es wird also schon wie ich möchte der Menübaum erstellt.
Bis hin zur letzten Kategorie, aber immer der selbe.
Das Menü wird so lange erstellt wie es Hauptkategorien gibt, aber immer die letzte Kategorie wird angezeigt.
Also immer Zubehör, Zubehör...

Irgendwie muss diese Variable immer geändert werden $node1.
Die muss nach dem die Schleife einmal durch ist zu $node2 werden.

Dann kann ich die unten auch wieder ausgeben in der for Schleife.
Dann würde alles funzen wie es soll. Hoffe ich mal.

Jemand eine Idee wie ich diese Variable ändern kann?

Hier mal das Script:
PHP-Code:
<?
...
//Menu Beginn
$menu  = new HTML_TreeMenu();
//1 Kategorie

while($artikel = mysql_fetch_object($result)) {
    $kategorie = $artikel->cat;
    $kategorie1 = urlencode($kategorie);
//  Menü erstellen
    $node1   = new HTML_TreeNode(array('text' => $kategorie, 'link' => "kategorie.php?cat=" . $kategorie1, 'icon' => $icon, 'expandedIcon' => $expandedIcon, 'expanded' => false));
//  Verzeichnisbaum erstellen
    if ($artikel->cat1 != ""){
        $node1_1 = &$node1->addItem(new HTML_TreeNode(array('text' => $artikel->cat1, 'link' => "kategorie.php?cat=" . $artikel->cat1, 'icon' => $icon, 'expandedIcon' => $expandedIcon)));
    }
    if ($artikel->cat2 != ""){
        $node1_1_1 = &$node1_1->addItem(new HTML_TreeNode(array('text' => $artikel->cat2, 'link' => "test.php", 'icon' => $icon, 'expandedIcon' => $expandedIcon)));
    }    
    if ($artikel->cat3 != ""){
        $node1_1_1_1 = &$node1_1_1->addItem(new HTML_TreeNode(array('text' => $artikel->cat3, 'link' => "kategorie.php?cat=" . $artikel->cat1, 'icon' => $icon, 'expandedIcon' => $expandedIcon)));
    }    
    if ($artikel->cat4 != ""){
        $node1_1_1_1->addItem(new HTML_TreeNode(array('text' => $artikel->cat4, 'link' => "kategorie.php?cat=" . $artikel->cat1, 'icon' => $icon, 'expandedIcon' => $expandedIcon)));
    }    
//  ENDE    
  
// 2 Kategorie muss dann so anfangen
    $node2   = new HTML_TreeNode(array('text' => "Festplatten", 'link' => "test.php", 'icon' => $icon, 'expandedIcon' => $expandedIcon, 'expanded' => true), array('onclick' => "alert('foo'); return false", 'onexpand' => "alert('Expanded')"));
}
for($x=1;$x<$anzahl;$x++){
    $menu->addItem($node1);
}    
    // Create the presentation class
    $treeMenu = &new HTML_TreeMenu_DHTML($menu, array('images' => '_include/images', 'defaultClass' => 'treeMenuDefault'));
...
?>
__________________
Never change a running system!

Geändert von Pixelschubser (26.04.2005 um 09:27:15 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Datenbankabfrage funtzt ned BlackSnake MySQLi/PDO/(MySQL) 7 27.01.2004 22:20:05
mailto und Datenbankabfrage TomSP PHP Grundlagen 6 14.12.2003 16:39:33
Datenbankabfrage Ludwig MySQLi/PDO/(MySQL) 1 06.12.2003 15:41:00
Performance bei Datenbankabfrage crowl PHP für Fortgeschrittene und Experten 6 04.06.2003 19:16:51
datenbankabfrage leerzeichen werden durch \ ersetzt ????! langwebdesign PHP für Fortgeschrittene und Experten 3 19.02.2003 19:31:28


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:08:12 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt