Calocybe: Ich stehe auf dem Schlauch

Beitrag lesen

Hi!

Martin's Version:

if (-e $htmlfile) {print "Datei vorhanden"; }
else { print "Datei nicht vorhanden"; }

Cheatah's Version:

if (-e "$htmldir/$htmlfile") { print "<BR>$htmldir/$htmlfile existiert.\n"; }
else { print "<BR>$htmldir/$htmlfile ist nicht vorhanden.\n"; }

ES FUNKTIONIERT!! Waren es also bloss die Gänsefüsschen..(DAS hatte ich noch nicht probiert, weil es in keiner der Docs so stand - wieder etwas gelernt!)

Das glaube ich nicht. Die Gaensefuesschen waeren in Deiner Version eigentlich ziemlich wurscht gewesen. Nur bei Cheatah's Version nicht, da sind sie fuer die Perl-Syntax noetig, da er zwei Variablen und das /-Zeichen zusammengefuegt hat. Er haette aber auch schreiben koennen
if (-e $htmldir.'/'.$htmlfile) ...

Der imho ausschlaggebende Unterschied ist, dass Cheatah das Verzeichnis mit genannt hat. Schreibt man nur
if (-e $htmlfile), so wird die Datei *im aktuellen Verzeichnis* gesucht. Bei
if (-e $htmldir.'/'.$htmlfile) wird dagegen die Datei in $htmldir gesucht (welches seinerseits auch wieder eine absolute oder eine relative Angabe sein kann). Nur wenn $htmldir zufaellig das aktuelle Verzeichnis ist, liefern beide Abfragen dasselbe Ergebnis.

Um herauszufinden, welches das aktuelle Verziechnis ist, fuehre man auf einem UNIX-System
    print pwd;
aus, auf einem DOS/Win32-System aber
    print cd;
Falls ein Script, das letztere Zeile enthaelt, unter Windows nicht von der Kommandozeile aus gestartet, sondern unter Microsoft's Spielzeug-Server (IIS4) ausgefuehrt wird, kann es aber Probleme geben. Siehe dazu <../../sfarchiv/1999_2/t03170.htm>.

So, ich hoffe ich hab Cheatah jetzt ueberall richtig geschrieben. Wir machen's den Leuten ja auch nicht gerade leicht mit unseren Pseudos. ;-)

Calocybe