pl: HTTP Commander

Beitrag lesen

Ja ei verbibscht, wie bin ich denn da wohl hingekommen?

Im Logfile ist alles nachvollziehbar ;)

Aber beim Upload statt Verzeichnisname (in Entwicklerkonsole) zu ändern, hättest Du auch nur den Dateinamen ändern müssen, übers DirPanel in der Tabelle, da ist nämlich: <td contenteditable="true"> .

Meine Empfehlung: Nimm deinen Commander offline, bevor irgendjemand was anderes macht als Päckchen grün anzumalen.

Für'n Dienstgebrauch im Adminbereich ist das Teil ganz nett.

Schönes Wochenende.

PS/Fazit: Beim regulären Upload darf es dem Anwender nicht möglich sein, den Dateinamen selbst zu vergeben, also da Verzeichnisnamen oder ../../vor/dateiname einzufädeln.

elsif($self->param('upload')){
    my $upfile = $self->eav('basedir')."/".$self->param('dirname')."/".$self->param('filename');
    my $fh = IO::File->new;
    $fh->open($upfile, O_CREAT|O_BINARY|O_TRUNC|O_RDWR) || 
      return $self->header('x-param' => $self->http_query({errstr => [$^E]}));    
    $fh->print($self->{CGI}->rawdata);
    $fh->close;
}