Thread wie trenne ich den Inhalt und das layout bei cgi/html (43 answers)
Opened by chris- at 2008-10-01 10:05

scriptor
 2008-10-01 19:25
#115088 #115088
User since
2008-05-07
69 Artikel
BenutzerIn
[Homepage] [default_avatar]
Man kann auch durchaus Alles selbst machen, man lernt ne Menge dabei.
chris-
Ich möchte - wenn möglich - das cgi in einer Datei, den html-Code in einer anderen, der wiederum CSS benutzt.

CSS spielt hier keine Rolle.
Du solltest von Anfang an jede Anfrage mit einem rewrite in einer .htaccess Datei auf Dein Skript umlenken, sieht etwa so aus:
Code: (dl )
1
2
3
RewriteCond 	%{SCRIPT_FILENAME}			!/resources/
RewriteCond %{SCRIPT_FILENAME} !start.pl$
RewriteRule ^(.*)$ /cgi-bin/start.pl/$1?&%{QUERY_STRING} [L]

Dein Perl untersucht nun den Aufruf auf Gültigkeit (Pfad, (User, Session)). Ich nenn das Controller. Am Ende ist klar, welche Seite benutzt wird und damit werden in der Seite benötigte Inhalte geholt, formatiert (in Templates) und an passender Stelle ausgegeben. Dafür gibt es viele Lösungsansätze.
Ein einfaches Template-System ist mit ein paar Zeilen programmiert und deckt erweitert 95% aller Anforderungen ab.
Eine andere Sache ist die Formatierung von Daten, denn Du solltest HTML in Daten vermeiden. Dafür kann man fertige Module z.B. markdown einbinden.

Ich habe mit cgiscriptor.pl
angefangen, was für den Anfang sehr überschaubar war. Inzwischen habe ich ein umfangreiches Framework aufgebaut.

Bevor sich jemand aufregt:
Natürlich kann man auch vorhandene Module nehmen, ich möchte nur anregen, sich zunächst selbst an die Problematik anzunähern. Umsteigen kann man dann immer noch.

View full thread wie trenne ich den Inhalt und das layout bei cgi/html