hallo Sebastian,
kann ich eigentlich Perl-Befehle wie bedingte Anweisungen eigentlich direkt in Form von ServerSideIncludes, wie etwa bei PHP, in den HTML-Quelltext einbinden. Wenn ja wie?
Prinzipiell kannst du per SSI CGI-Scripts aufrufen. Das geht mit "ExecCGI" - und wenn dein CGI-Script ein Perl_script ist, wird es ausgeführt.
Eine weitere Möglichkeit gibt es mit "Perlscript" - du kannst PERL-Syntax ähnlich wie PHP-Code direkt in HTML schreiben. Allerdings muß dann der Server, bei dem deine Seite gehostet wird, ein paar Module vorhalten.
Konkret kann so eine HTML-Seite so aussehen:
<%@ LANGUAGE = PerlScript %>
<html>
<head>
<TITLE>PerlScript Willkommen</TITLE>
</head>
<BODY BGCOLOR=#FFFFFF>
<FONT SIZE=4>
<SCRIPT language="PerlScript" RUNAT=Server>
sub PrintWelcome {
$window->document->write("<HR> ");
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();
$thisday=(Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Sonnabend)[$wday];
$thismon=(Januar,Februar,Maerz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember)[$mon];
if ($hour < 10) {
$window->document->write( "Guten Morgen! ");
} elsif ($hour < 18) {
$window->document->write( "Guten Tag :-) ");
} else {
$window->document->write( "Guten Abend! ");
};
$time = sprintf '%d:%2.2d:%2.2d',$hour,$min,$sec;
$year += 1900;
$datetime = $time.' Uhr am '.$thisday.', '.$mday.'. '.$thismon.' '.$year;
$window->document->write("<BR> ");
$window->document->write("Willkommen in der PerlScript-Welt.<BR> ");
$window->document->write("<BR> ");
$window->document->write("Falls du grade keine Uhr zur Hand hast, es ist jetzt<BR> ");
$window->document->write($datetime);
$window->document->write("<HR> ");
}
PrintWelcome();
</SCRIPT>
</font>
<p><font face="Arial" size="2">dieses script ist darauf angewiesen, daß der Rechner, auf dem es laufen soll, perl installiert hat</font></p>
</BODY>
</HTML>
Das Ganze kann unter der Bezeichnung "EmbPerl" auch in diversen Dokumentationen gefunden werden.
Grüße
Christoph S.