ich habe folgenden Code:
Solch einen Code solltest du nicht öffentlich zeigen, er ist extrem unsauber und zudem kann er nicht funktionieren.
#!"\xammp\perl\bin\perl.exe" -w
use CGI::Carp qw(fatalsToBrowser);
use POSIX qw(ceil floor);
[code lang=perl][link:http://wiki.perl-community.de/bin/view/Wissensbasis/UseStrict@title=use strict]
> $pics\_nr = 105;
> $pics\_seiten = ceil($pics\_nr/16);
> $pics\_count = 0;
> $pics\_name = 1;
> $pics\_break = 1;
> $page\_name = 1;
>
>
> foreach ($pics\_seiten) {
Perl Schleifen sind zwar flexibel, aber das ist keine. Diese Schleife wird nur einmal durchlaufen, war das so geplant?
> open($page\_name,">$page\_name.html") || die("FEHLER: Datei kann nicht geschrieben werden...");
Hier kannst du dir noch den Grund anzeigen lassen
`open($page_name,">$page_name.html") || die("FEHLER: Datei kann nicht geschrieben werden... weil: $!");`{:.language-perl}
> print $page\_name "Content-type: text/html\n\n";
Du gibst den header, den eigentlich der Browser sehen will in eine Datei aus.
> print $page\_name "<html><body>";
> print $page\_name "<center><table>";
> print $page\_name "<tr>";
Den header und HTML Code kann man eleganter mit dem [CGI Modul](http://de.selfhtml.org/perl/module/cgi.htm) ausgeben.
> in dem Skalar $pics\_nr habe ich gespeichert wieviele Bilder im Ordner img sind (ich weiß, das es besser wäre, wenn ich den Ordner auslese, aber soweit bin ich leider noch nicht). In dem Skalar sage ich, wieviele Seiten erstelle werden sollen und wieviele Bilder eine Seite haben soll.
Nur macht das der Code nicht, dann musste die Schleife so aussehen:
`for (1..$pics_seiten) {`{:.language-perl}
(Wenn du bei 1 anfängst zu zählen)
> Der Code soll eine HTML-Setie erzeugen, die eine Zentrierte Tabelle enthält (bitte jetzt keine Diskussion darüber, das <div>-Tags eleganter wären).
Nein, Div wären nicht eleganter um die Seite zu zentrieren, dafür brauchst du kein zusätzliches Element und Bilder nebeneinander anordnen kannst du mit float, dann passen soviele Bilder nebeneinander wie im Browserfenster Platz haben und du könntest die ganze Sache noch einfacher programmieren, aber das ist ein anderes Thema.
>
> Wenn ich diese Datei jetzt ausführe, dann wird mir folgende Fehlermeldung im Brwoser ausgegeben:
Im zweifelsfall ist es oft günstiger, das Skript in der Konsole bzw. im DOS Fenster auszuführen, dann sind die Fehlermeldungen auch klarer und du siehst was dein Skript ausgibt. Wobei in dem Fall erstmal der Pfad zu Perl stimmen sollte. Unter Windows ist es auch möglich, den Server so zu konfigurieren, dass du diese Zeile einbauen kannst, dass sie auch unter einem Linux funktioniert. Der Eintrag in der Apache Konfiguration lautet: ScriptInterpreterSource registry
Struppi.