Siechfred: fileupload per cgi: was tun, wenn kein file ausgewählt?

Beitrag lesen

if ( defined $cgi->param("userfile") )

Damit prüfst du, ob dem Script ein Parameter namens 'userfile' übermittelt wurde. Lässt der Anwender das Eingabefeld leer (weil er keine Datei auswählt), wird diese Abfrage trotzdem immer wahr sein. Willst du hingegen abfragen, ob dem Script tatsächlich ein Dateiname übergeben wurde, so betrachte den String im booleschen Kontext:

my $datei = $cgi->param('userfile');  
# wurde dem Script ein Parameter namens userfile übergeben?  
defined $datei ? print 'Parameter vorhanden' : print 'Kein Parameter userfile';  
# hat der Parameter userfile einen Wert?  
$datei ? print 'Dateiname vorhanden' : print 'Kein Name übergeben';  
# weitere formale Prüfungen ...

Siechfred

--
Ich bin strenggenommen auch nur interessierter Laie. (molily)