php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Thema geschlossen
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 25-09-2015, 15:01
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard Navigation abbilden

Hallo zusammen

Ich habe eine MYSQL Tabelle bei welcher neben dem namen und url auch eine Laufnummer und eine Position vorhanden ist.

Das heisst alle Navigationspunkte auf der ersten Stufe besitzen die Position 0 und alle anderen die jeweilige Laufnummer der Oberstufen als Position.

Bis heute habe ich die Navigation abbgebildet indem ich pro Stufe eine Datenbankabfrage erstellt habe.

Das hat 2 Nachteile: 1. zu viele Abfragen, 2. Ist es nicht unentlich, so dass bei jeder neuen Stufe wieder eine Abfrage erstellt werden muss.

Nun will ich das ganze so klein und unabhängig machen wie möglich, nur fehlt mir der Ansatz dazu.

Wer kann mir einen Tip geben ob ich es mit Array oder Join Abfragen probieren sol
  #2 (permalink)  
Alt 25-09-2015, 16:26
SysOp
 Registrierter Benutzer
Links : Onlinestatus : SysOp ist offline
Registriert seit: May 2005
Beiträge: 67
SysOp befindet sich auf einem aufstrebenden Ast
Standard

Zu viele Abfragen? wieviele Navipunkte hast du?

Je Navipunkt müsste sich mit deiner Struktur (sofern ich sie verstanden habe) genau eine Abfrage ergeben. Die Frage, wie bestimmst du die Positionsnummer? Ich nehme mal ein bereinigtes und kontrolliertes $_POST['navi_posnummer'] an.

PHP-Code:
SELECT FROM `naviWHERE `position` = '' $_POST['navi_posnummer'] . ; 
Liefert ein Array mit allen Navi-Punkten an genau dieser Position. Und unendlich wäre es auch.

PS Backslashes gehen hier nicht....

Geändert von SysOp (25-09-2015 um 16:28 Uhr)
  #3 (permalink)  
Alt 25-09-2015, 17:25
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard

Nein nicht mit POST.

Abfrage zeige alle mit position 0
{
Abfrage zeige alle mit Position = Laufnummer der ersten Abfrage
{
Abfrage zeige alle mit Position = Laufnummer der zweiten Abfrage
{
usw.
}
}
}

Ergibt eine Baumstruktur
  #4 (permalink)  
Alt 26-09-2015, 15:26
h4zebust3r90
 Registrierter Benutzer
Links : Onlinestatus : h4zebust3r90 ist offline
Registriert seit: Sep 2015
Beiträge: 12
h4zebust3r90 befindet sich auf einem aufstrebenden Ast
h4zebust3r90 eine Nachricht über ICQ schicken
Standard

Hallo,

ich persönlich empfehle gerne dieses hier ( Nested Sets – Verschachtelte Bäume mit MySQL - Arne Klempert ). Ist zwar etwas komplizierter jedoch wesentlich performanter da die Struktur nicht rekursiv ausgelesen werden muss.
__________________
maralex.one Webentwicklung
ICQ:
661-692-761 | mail: info[aet]maralex.one
  #5 (permalink)  
Alt 26-09-2015, 21:37
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

Ob Nested Sets eine gute/die beste Wahl sind, hängt meines Erachtens aber schon etwas von den genauen Anforderungen ab.

Ein neuerer Thread auf phpforum.de zu grob dem Thema dieses Threads:

- [MySQL] Mehrere "Kommentarebenen" - PHP Forum: phpforum.de
  #6 (permalink)  
Alt 27-09-2015, 05:17
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard

Halleluja

Ich wurde fündig...sprich das wurde ich schon lange auch die Links welche hier gepostet wurde kenne ich, diese habe aber nie zu meinem Ziel geschweige denn zu meiner Befriedigung beigetragen!

Hier der Link mit welchem ich nun glücklich bin; mein Script sieht mittlerweilen bereits anders erweitert und grösser aus, aber die Basis findet Ihr hier.

Link zum Baum
  #7 (permalink)  
Alt 27-09-2015, 06:05
h4zebust3r90
 Registrierter Benutzer
Links : Onlinestatus : h4zebust3r90 ist offline
Registriert seit: Sep 2015
Beiträge: 12
h4zebust3r90 befindet sich auf einem aufstrebenden Ast
h4zebust3r90 eine Nachricht über ICQ schicken
Standard

Hallo,

sehr schön das du dich selber zurecht gefunden hast.
Danke für den Link, dieser wird bestimmt auch in Zukunft so manchem helfen!

LG und Gute Nacht
__________________
maralex.one Webentwicklung
ICQ:
661-692-761 | mail: info[aet]maralex.one
  #8 (permalink)  
Alt 27-09-2015, 17:11
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

Zitat:
Ich wurde fündig...sprich das wurde ich schon lange auch die Links welche hier gepostet wurde kenne ich, …
Du kanntest den Thread auf phpforum.de? Du wusstest also schon alle denkbaren Ansätze? Dann verstehe ich nicht, wieso du diesen Thread überhaupt erstellt hast?
I call bullshit. Du in #1:

Zitat:
nur fehlt mir der Ansatz dazu
Zitat:
…diese habe aber nie zu meinem Ziel geschweige denn zu meiner Befriedigung beigetragen!
Wenn der Bauer nicht schwimmen kann, liegt es an der Badehose?

Zitat:
Hier der Link mit welchem ich nun glücklich bin
Dann heul hier aber nicht mehr rum wegen zu vieler Abfragen.

Vielleicht postest du hier in Zukunft einfach nicht mehr.

Geändert von mermshaus (27-09-2015 um 17:28 Uhr)
  #9 (permalink)  
Alt 27-09-2015, 17:37
h4zebust3r90
 Registrierter Benutzer
Links : Onlinestatus : h4zebust3r90 ist offline
Registriert seit: Sep 2015
Beiträge: 12
h4zebust3r90 befindet sich auf einem aufstrebenden Ast
h4zebust3r90 eine Nachricht über ICQ schicken
Standard

Hallo,

ich denke das Thema hat sich erledigt. Moderator?
__________________
maralex.one Webentwicklung
ICQ:
661-692-761 | mail: info[aet]maralex.one
  #10 (permalink)  
Alt 27-09-2015, 17:54
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

Kannst meinen Beitrag ja melden, wenn er dir nicht gefällt. Dann kannst du dir das Gespamme sparen.

Die verlinkte Lösung nutzt übrigens die veraltete mysql-Extension, beachtet keine Kontextwechsel nach HTML, und MyISAM und charset=latin1 ist auch nicht der Weisheit letzter Schluss.

Edit: Und um es noch inhaltlich einzuordnen: Das ist eine Adjazenzliste. Die Dinger sind rein mit MySQL nicht wirklich sinnvoll auslesbar. Das ist richtig. Da braucht es dann zum Beispiel PHP und Rekursion und etliche Queries oder eben eine Query, die alles holt, und dann PHP-Code, der aus den Daten einen Gesamtbaum erstellt. Was da geschickter ist, hängt von der Anwendung ab. Wenn es nur ~100 Menü-Einträge sind, würde ich persönlich durchaus darüber nachdenken, den gesamten Baum zu holen, um Queries zu sparen. Das hängt dann halt daran, was man genau für Anforderungen hat und wo man gegebenenfalls eine konkretere Optimierung benötigt.

Eine gute Zwischenlösung zwischen „endloser“ Rekursion und Nested Sets können materialized paths sein (siehe phpforum.de-Thread).

Geändert von mermshaus (27-09-2015 um 18:34 Uhr)
  #11 (permalink)  
Alt 27-09-2015, 18:41
h4zebust3r90
 Registrierter Benutzer
Links : Onlinestatus : h4zebust3r90 ist offline
Registriert seit: Sep 2015
Beiträge: 12
h4zebust3r90 befindet sich auf einem aufstrebenden Ast
h4zebust3r90 eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von mermshaus Beitrag anzeigen
Kannst meinen Beitrag ja melden, wenn er dir nicht gefällt. Dann kannst du dir das Gespamme sparen.
Sehr schön,

jetzt wird mir auch klar warum ich mich hier nie angemeldet habe

In diesem Sinne ..

__________________
maralex.one Webentwicklung
ICQ:
661-692-761 | mail: info[aet]maralex.one
  #12 (permalink)  
Alt 28-09-2015, 23:11
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

OT:

Okay, sorry, das mit dem Gespamme nehme ich meinetwegen zurück. Ich hatte das auch vor dem Hintergrund von zwei, drei anderen Beiträgen von dir geschrieben, die ich mitbekommen habe, aber du postest ansonsten schon okay.

Ich finde es hier im Thread jedenfalls sehr unangebracht, wenn die Hilfe, die inhaltlich wirklich in Ordnung und zielführend ist, als unbrauchbar bezeichnet wird. Es wurde nach einem Ansatz gefragt, und genau das wurde angemessen und informativ beantwortet.

Von uns Helfern kann doch niemand ahnen, dass eigentlich eine kopierfertige Lösung gewünscht ist. Da muss man uns hier nicht dumm kommen, nur weil man als Threadersteller selbst nicht programmieren kann oder will und keine passendere Frage formuliert hat, obwohl man seit 8 Jahren hier angemeldet ist.

Ich habe für so was kein Verständnis, weil ich es einfach fies finde.

Geändert von mermshaus (28-09-2015 um 23:13 Uhr)
  #13 (permalink)  
Alt 29-09-2015, 04:10
h4zebust3r90
 Registrierter Benutzer
Links : Onlinestatus : h4zebust3r90 ist offline
Registriert seit: Sep 2015
Beiträge: 12
h4zebust3r90 befindet sich auf einem aufstrebenden Ast
h4zebust3r90 eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von mermshaus Beitrag anzeigen
OT:

Okay, sorry, das mit dem Gespamme nehme ich meinetwegen zurück. Ich hatte das auch vor dem Hintergrund von zwei, drei anderen Beiträgen von dir geschrieben, die ich mitbekommen habe, aber du postest ansonsten schon okay.

Ich finde es hier im Thread jedenfalls sehr unangebracht, wenn die Hilfe, die inhaltlich wirklich in Ordnung und zielführend ist, als unbrauchbar bezeichnet wird. Es wurde nach einem Ansatz gefragt, und genau das wurde angemessen und informativ beantwortet.

Von uns Helfern kann doch niemand ahnen, dass eigentlich eine kopierfertige Lösung gewünscht ist. Da muss man uns hier nicht dumm kommen, nur weil man als Threadersteller selbst nicht programmieren kann oder will und keine passendere Frage formuliert hat, obwohl man seit 8 Jahren hier angemeldet ist.

Ich habe für so was kein Verständnis, weil ich es einfach fies finde.
Alles klar. Kein Stress, ich meine du hast ja auch irgendwie recht
Haha jmn

Aber jetzt bitte hier closen .. Threader hat ja schon alles ala Copy & Paste
__________________
maralex.one Webentwicklung
ICQ:
661-692-761 | mail: info[aet]maralex.one
  #14 (permalink)  
Alt 04-10-2015, 04:46
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard

Hallo was geht denn hier ab?

Ich kann mich nicht mehr halten vor lachen, was für Probleme haben gewisse Menschen auf der Erde!?!

Danke h4zebust3r90 nach Deinem zweiten Post hätte diese Diskussion beendet werden müssen.

An alle Menschen dieser Erde; Seit im reinen mit Euch und liebt Euch und Eure Mitmenschen! Danke
  #15 (permalink)  
Alt 04-10-2015, 05:06
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Wenn du vorher schon Ansätze recherchiert/gefunden hast, dann sollte es das Mindeste sein, dass du diese auch erwähnst, und erklärst warum dir diese nicht zusagen.

Potentielle Helfer noch mal das raussuchen lassen bzw. vielleicht sogar eine längere Antwort schreiben zu lassen, nur damit von dir dann ein „weiß ich/kenn ich schon, gefällt mir nicht“ kommt … das ist einfach ziemlich schlechter Stil.

Als halte dich da bitte in Zukunft einfach dran.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Thema geschlossen

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Excel Formel in PHP abbilden AchimAppel PHP Developer Forum 9 04-04-2009 22:09
Schneballsystem abbilden? scub PHP Developer Forum 3 07-04-2008 08:25
Hierarchische Baumstruktur abbilden Screw Driver PHP Developer Forum 2 04-10-2006 02:42
Kombinationen in Datenbank abbilden Dominic SQL / Datenbanken 4 28-01-2006 00:58
komplexe Tabellenstrukturen abbilden frabron BRAINSTORMING PHP/SQL/HTML/JS/CSS 0 04-10-2004 10:42

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

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