php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.05.2005, 14:20  
Benutzer
 
Registriert seit: 10.12.2003
Beiträge: 79
Schiedsrichter ist zur Zeit noch ein unbeschriebenes Blatt
Standard

[quote="Sakuraiel"][quote="axo"]bis auf die tatsache, dass mir die augen tränen, wenn ich sehe, wie hier die arme mysql-datenbank für das unwissen anderer mit rekursiven abfragen bestraft wird, wäre mein korrekturvorschlag folgender:



Was meinst du mit
Zitat:
arme mysql-datenbank für das unwissen anderer mit rekursiven abfragen bestraft
Schiedsrichter ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.05.2005, 14:23  
Gast
 
Beiträge: n/a
Standard

Er meint damit, das du so bei jedem aufruf der funktion eine Anfrage an die Datenbank schickst.
Ich weiss zwar gerade nicht wie (müsste ich mich genauer mit beschäftigen) aber das könnte man wohl auch mit einer Abfrage machen... .
 
Alt 18.05.2005, 14:29  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

dir sollte einfach bewusst sein, dass du die datenbank unnötig belastest. je mehr 'seiten' du im navigationsbaum hast, desto mehr rekursive queries produzierst du. der aufwand deiner funktion hängt im worst case von der anzahl der einträge des baums ab O(n), der optimalfall ist aber O(1), also konstant (eine einzige abfrage gibt dir alle infos).
es gibt wunderbare algorithmen, z.b. 'adjacency lists' oder 'nested sets' , mithilfe derer man bäume 'flachdrücken' kann, um die informationen darin in einer datenbank zu speichern.
aber selbst ohne das könntest du mit ein wenig mathematik selbst draufkommen, wie du die eigenschaft 'seitenID x ist privat oder nicht' mit kleinen modifikationen am datenbank-entwurf und einer einzigen datenbank-abfrage erreichen könntest.
axo ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
GD-Spezialisten gesucht....wer kann helfen? rezix PHP Tipps 2008 12 26.02.2008 17:55
Call to a member function on a non-object Riks PHP Tipps 2007 20 10.02.2007 22:59
nach grösstem (unbekannten) Wert suchen lindner Datenbanken 2 20.08.2006 22:13
Wie diesen Wert in eine DB einfügen? Mike² Datenbanken 5 29.03.2006 23:57
array als Return wert aus einer Function heraus PHP-Fortgeschrittene 7 09.02.2006 22:46
Funktion "in_array" gibt falschen Wert zurück? PHP-Fortgeschrittene 4 04.02.2006 18:47
array verarbeitung (schlag auf den hinterkopf) PHP Tipps 2007 9 16.11.2005 11:37
function in einer function - help! PHP Tipps 2005-2 4 25.10.2005 00:20
minus wert, plus wert in variable nutzen PHP Tipps 2005-2 5 22.10.2005 19:15
Dropdown gibt falschen Wert an DB PHP Tipps 2005-2 6 30.08.2005 10:53
kleinsten und größten wert ermitteln niffi PHP Tipps 2005 14 26.04.2005 12:42
[Erledigt] OOP: function in eine andere function einbinden PHP Tipps 2005 10 20.03.2005 16:13
[Erledigt] is_dir liefert falschen Wert PHP-Fortgeschrittene 4 19.03.2005 12:27
[Erledigt] Problem: per klick auf Button Wert erhöhen/verringern HTML, Usability und Barrierefreiheit 7 07.10.2004 08:31


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:54 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.