Zur Boardunity Forenstartseite

Zurück   Boardunity & Video Forum » Technik » Programmierung und Datenbanken

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1  
Alt 04.08.2005, 09:51
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137

dynamisch oder statische Seiten/ Blöcke integrieren


Ich bastle an meiner Seite und überlege mir gerade ein System für die Seitenaufrufe und Integration der Blöcke.

Es gibt:
- html- und php-Seiten/ Blöcke aus Dateien
- html- und php-Seiten/ Blöcke aus der DB
Alle diese Seiten/ Blöcke haben einen Eintrag in der DB (Table pages bzw blocks), welcher die Zugriffsrechte uws. regelt.
Die Seiten/ Blöcke aus Dateien werden einfach mittels include eingefügt, während diese aus der DB mittels eval ausgeführt werden.

Nun überlege ich diese Seiten/ Blöcke aus der DB, anstatt den Code aus der DB mit eval auszuführen, einfach in Dateien zu cachen und diese dann wiederum nur zu includen.
Dies hätte den Vorteil das ich auf eval, was ein Sicherheitsrisiko sein kann, verzichten kann und alle Aufrufe einfach per include abgewickelt werden können.

Deshalb überlege ich mir grade:
1.) Soll ich ausschließlich mit Dateien und include arbeiten.
2.) Sollen die gecachten Dateien im Cache-Ordner abgelegt werden.
3.) Oder diese "gecachten" Dateien einfach wie "richtige" Blöcke angelegt und im Ordner pages bzw blocks gespeichert werden (Im Format kein Unterschied zu "regulären" Blöcken).

Zu welcher Lösung ratet ihr mir? Aus SIcherheitsgründen oder auch der Umsetzbarkeit und Geschwindigkeit
  #2  
Alt 04.08.2005, 11:42
neues Mitglied
 
Registriert seit: 08.2005
Beiträge: 2
Zunächst einmal würde ich grundsätzlich von eval() abraten. Das schreit förmlich nach "Hack mich"
Deine Anwendung lässt sich meiner Meinung nach mit einer Templateengine ala Smarty oder Savant lösen. Wenn du unbedingt deine Templates in einer Datenbank hinterlegen willst so ist dies hiermit auch möglich und du kannst dich auf das wesentliche konzentrieren, da das cachen und ähnliches direkt von der Templateklasse erledigt wird.

Schau am besten mal auf http://smarty.php.net. Das ist die Templateklasse meiner Wahl.

  #3  
Alt 04.08.2005, 11:48
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Ich habe bereits eine Template-Klasse, die das cachen von Templates in php-Dateien übernimmt und FOREACH, IF, ELSEIF, INCLUDE unterstützt
Es geht auch nicht um die Umsetzung an sich, sondern eher um den Ansatz, wie es gelöst werden soll.
Also bist du auch eher für das Speichern innerhalb einer Datei und den einfachen include selbiger bei Bedarf?
Und dann steht noch die Frage, ob diese als Cache-Dateien oder eben normale Seiten/ Blöcke abgelegt werden sollen?
Sollte man diese in ein entsprechendes Format bringen, so unterschieden diese sich in keinster Weise von einer Seite/ einem Block aus einer Datei.
Wäre das dann icht sogar am sinnvollsten?

  #4  
Alt 05.08.2005, 14:23
Benutzerbild von TRS
TRS TRS ist offline
Mitglied
 
Registriert seit: 02.2003
Ort: Berlin
Beiträge: 995
eval() ist keine Gefahr, wenn entsprechend Kontrolle über seinen Code ausübt. Wenn du Performance in Form von Geschwindigkeit möchtest, so solltest die Datenbank nutzen: Ram ist ist schneller Festplatte. Aber damit läufst du auch Gefahr, dass Tonnen an Ram benötigt werden.

  #5  
Alt 06.08.2005, 10:56
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Ich werde das jetzt einfach so machen:
html-Seiten können direkt in der DB abgelegt und auch aus dieser geladen werden. Seiten aus Dateien stellen eh keine Probleme da, die werden per include eingefügt. Dynamische php-Seiten werden nach dem erstellen in eine Datei geschrieben und auch per include eingefügt. Dadurch vermeide ich es php-Code aus der DB mit eval () auszuführen, da ja beim erstellen der Seite nicht unbedingt auf Sicherheit geachtet wird.

  #6  
Alt 06.08.2005, 15:35
Benutzerbild von Scotty
Supergockel
 
Registriert seit: 12.2001
Ort: 16816 Neuruppin
Beiträge: 718
Ich hab von diesen Sachen noch kein großen plan , finde es nur sehr umständlich wenn die Templates in die DB gepackt werden, bei Foren in etwa und alles übers ACP bearbeitet werden muss…

__________________
Enrico Hahn
Scotty's .NET Projekte: StarTrek Infos X10b, e-hahn Updater 3.20, Easy Desktop Note 1.10
  #7  
Alt 08.08.2005, 07:21
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Es werden ja nicht die Templates in die DB geladen, sondern viel mehr die Inhalte der Seite Natürlich muss in einer HTML-Seite auch mal ein wenig Layout stecken (DIV's oder Tabellen z.B.), aber das meiste geht über Templates in Dateien

  #8  
Alt 08.08.2005, 10:06
Benutzerbild von Scotty
Supergockel
 
Registriert seit: 12.2001
Ort: 16816 Neuruppin
Beiträge: 718
? Na aber beim wbb oder vb wird doch alles in der DB gespeichert, hier muss und kann man nur über das ACP Anpassungen vornehmen?

__________________
Enrico Hahn
Scotty's .NET Projekte: StarTrek Infos X10b, e-hahn Updater 3.20, Easy Desktop Note 1.10
  #9  
Alt 08.08.2005, 12:55
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Das verstehe ich jetzt nicht ganz...
Wie soll ALLES in der DB gespeichert werden? Auch das Grundlegende Layout der Seite??? Wohl kaum! Nur die Beiträge und diese wiederum nur als Variablen Beitrag und Titel (und was sonst noch benötigt ist) und DIESE Variablen sollten doch dann einfach in das Layout eines Beitrages gesteckt werden (per Schleife wird das dann je Beitrag einmal ausgegeben)...
Vielleicht reden wir auch gerade aneinander vorbei???

  #10  
Alt 08.08.2005, 13:31
Benutzerbild von Scotty
Supergockel
 
Registriert seit: 12.2001
Ort: 16816 Neuruppin
Beiträge: 718
Zitat:
Zitat von eBoy
Das verstehe ich jetzt nicht ganz...
Wie soll ALLES in der DB gespeichert werden? Auch das Grundlegende Layout der Seite???
Ja, nie dir das neue WBB oder VB angeschaut? Sämtliche CSS Einstellungen und einzelne HTML Templates sind hier in der DB gespeichert…

__________________
Enrico Hahn
Scotty's .NET Projekte: StarTrek Infos X10b, e-hahn Updater 3.20, Easy Desktop Note 1.10
  #11  
Alt 08.08.2005, 14:53
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Ist das überhaupt sinnvoll? Ich meine eine DB ist schnell, vielleicht ja auch schneller als ein include, doch so viel in die DB abzulegen lässt diese doch gewaltig anwachsen lassen...
Ich habe mit dem neuen WBB nichts am Hut und mit VB allgemein sowieso nicht
Werde mir das aber mal anschauen.

Bleibt aber die Frage im Raum: Macht es Sinn viel und fast alles in die DB zu packen?

  #12  
Alt 08.08.2005, 16:36
Benutzerbild von TRS
TRS TRS ist offline
Mitglied
 
Registriert seit: 02.2003
Ort: Berlin
Beiträge: 995
Im Bezug auf Geschwindigkeit ist es sinnvoll, da der Zugriff über Arbeitsspeicher schneller ist als über Festplattenzugriff. Es stellt sich jedoch die Frage, ob man diesen Geschwindkeitsvorteil nicht durch Optimierung des restlichen Codes besser erreichen könnte.

  #13  
Alt 09.08.2005, 07:21
Mitglied
 
Registriert seit: 01.2005
Beiträge: 137
Eben, außerdem wird die Datenbank bedeutend mehr beansprucht, wenn man alles darin ablegt und unzählige Abfragen für den Seitenaufbau benötigt...
Je nach Webspace und Hoster gibt es ja auch öfters mal Probleme mit der DB.

Antwort


Stichworte
-

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.
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Verbasteln oder einfach mal laufen lassen Jan Stöver Community Management, Administration und Moderation 3 08.08.2005 05:28






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