Effiziente Website-Erstellung mit CGI

Templates

Eine etwas sauberere Lösung ist es, HTML-Vorlagen (Templates) zu verwenden. Dadurch bleibt das HTML in einer separaten Datei, enthält aber Zusatzinformationen, meist in Form von speziellen XML-Tags. Die HTML-Datei wird vom CGI-Programm gelesen, und sobald das Programm auf diese speziellen Tags stößt, werden sie dynamisch durch den jeweiligen Content ersetzt. Diesen Ansatz verfolgt auch das HTML::Template-Modul, das im Perl-Archiv CPAN (Comprehensive Perl Archive Network) zu finden ist. Der folgende Code-Ausschnitt zeigt ein Beispiel für eine solche HTML-Vorlage:


<HTML><BODY>
This car is <TMPL_VAR NAME="COLOR">.
</BODY></HTML>

Und hier der Perl-Code, der dies verarbeitet:


#!/usr/bin/perl -w
use HTML::Template;
my $template = HTML::Template->new(filename=>"temp.html");
template->param(COLOR=> "red");
print template->output;

Der Wert der Template-Variablen COLOR („red“) ersetzt den Tag <TMPL_VAR>. Templates stellen eine sauberere Lösung dar als HERE-Dokumente, da Programmcode und Daten in jeweils eigenen Dateien getrennt voneinander bleiben. Für weitere Informationen über dieses Modul sollten Sie die HTML::Template-Manpage lesen. Viele serverseitige Technologien – von SSI bis ASP – verwenden eine Template-Strategie.

CGI.pm

Eine der ersten CGI-Lösungen war das berühmt-berüchtigte CGI.pm. Dieses Modul behandelt HTML-Tags als Code: für jeden HTML-Tag gibt es eine entsprechende Perl-Subroutine. So kann man den HTML-Code festlegen, ohne die normale Perl-Syntax zu verlassen. CGI.pm ist das Gegenteil von HERE-Dokumenten, denn hier besteht alles aus Perl-Code. Eine Beispiel-Seite mit CGI.pm könnte so aussehen:


#!/usr/bin/perl -w
use CGI ":standard";
my $q = new CGI;
print $q->start_html, "This car is red", $q->end_html;

Über diese Module gäbe es natürlich noch viel mehr zu erzählen, aber wir wollen uns ja nur einen Überblick für die folgenden Tests verschaffen.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

4 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

4 Tagen ago

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

4 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

4 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

5 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

5 Tagen ago