Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]124[/thread]

script soll nicht runtergeladen werden: sondern ausgeführt!



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
kölsch
 2004-12-29 13:52
#618 #618
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
Ich hab nen upload in ein script eingebunden, doch anstatt das script auszuführen, wird gefragt ob es geöffnet oder gespeichert werden soll. Hatte sowas schonmal, weiß aber nicht mehr wo der Fehler lag!

PS: Offline auf meinem localhost funktionierts einwandfrei. Liegt das an den Rechten? Hab ich aber auch schon rumprobiert..

Danke,

Gruß Daniel
renee
 2004-12-29 13:57
#619 #619
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
das liegt meistens daran, dass in dem Ordner, in dem das Skript gespeichert ist, keine CGI ausgeführt werden dürfen... oder dass es die falsche Endung hat. Wenn es .pl heißt, dann benenn es um in .cgi
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
kölsch
 2004-12-29 14:01
#620 #620
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
vorher gings aber.. endung: .pl

liegt es evtl am parsen vom request_string?
Habs vorher manuell gemacht, jetzt mit
Code: (dl )
1
2
3
4
5
6
7
8
use CGI qw/:standard/;

my $query = new CGI;
my %in = $query->Vars;

$in{'uploaded_file'} = param('uploaded_file');

return %in;


Kann das auch ein Grund dafür sein?
Wenn ich manuell parse will er nichts speichern, aber ich krieg die uploaded_file nicht..
[E|B]
 2004-12-29 14:06
#621 #621
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
HiHo!
Es muss die Dateiendung der Datei eingetragen sein:

Code: (dl )
AddHandler cgi-script .cgi .pl


Dieser Eintrag sagt dem Webserver, dass sowohl .cgi als auch .pl Dateien ausgeführt werden dürfen.
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
kölsch
 2004-12-29 14:09
#622 #622
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
danke, aber daran kann es wie gesagt nicht liegen. Der Server versteht pl endungen, dass weiß ich weil meine scripte vorher schon Jahre mit pl auf dem server laufen..

Nochmal: Kann es am parsen liegen?
renee
 2004-12-29 14:21
#623 #623
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=kölsch,29.12.2003, 13:01]
Code: (dl )
1
2
3
4
5
6
7
8
use CGI qw/:standard/;

my $query = new CGI;
my %in = $query->Vars;

$in{'uploaded_file'} = param('uploaded_file');

return %in;
[/quote]
Warum holst Du hier eigentlich zweimal die Parameter?? In %in stehen schon die Parameter...

Eigentlich dürfte es nicht am parsen liegen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
kölsch
 2004-12-29 14:31
#624 #624
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
Du meinst wegen uploaded file? Ja, ich muss den Parameter irgendwie nochmal manuell einlesen, sonst geht der upload nicht, keine Ahnung warum. Naja, egal, ich hab grad noch was rausgefunden:
Ich mach den upload, um Bildergalerien hocgladen zu können. Dazu generier ich mit Image::Magick Thumbnails. Wenn ich den part aus dem script rauskommentiere, funktioniert es. ->Wieso?!

Hier der verursachende code:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# create thumbnails (format: ##i.jpg)..

use Image::Magick;

my ($width,$height,$relation);

my $p = new Image::Magick;


for (1 .. $#members+1) { # is gegeben..
print"<b>$_</b>, ";
$p->Read("$output_path/$_.jpg");
}

my $numberOfImages = $#$p+1;


for (1 .. $numberOfImages) {
($width,$height) = $p->[$_-1]->Get("Width","Height");
$relation = $height / $width;
$p->[$_-1]->Resize("Width" => $thumbnail_width, "Height" => ($thumbnail_width * $relation));
$p->[$_-1]->Write("$output_path/$_"."i.jpg");
$message .= "$output_path/$_"."i.jpg<br>\n";
}

Ist daran was falsch? Wie gesagt, offline funktioniert das. Wenn ichs online dazu schreibe, will er das script speichern, ansonsten nicht..
kölsch
 2004-12-29 14:40
#625 #625
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
Ok, es funktioniert jetzt.

Es lag doch tatsächlich an der print-Anweisung. Da ich am Ende der subroutine auf eine Ausgabe routine verwiesen hab, wo dann $message ausgegeben wird, hat er mit print offensichtlich nichts anfangen können. Aber trotzdem meine Frage: Wieso will er dann das komplette script runterladen?? Wenn mir das jemand beantworten kann, bin ich zufrieden ;-)

Danke!
Dubu
 2004-01-02 13:56
#626 #626
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Bist du sicher, dass das Skript heruntergeladen/gespeichert werden sollte, oder nur die vom Skript erzeugte und gelieferte HTML-Seite? Letzteres kann nämlich daran liegen, dass das fehlerhafte Skript keinen korrekten Content-Type erzeugt hat und deshalb der Text vom Browser nicht als HTML erkannt wurde (für alle Browser außer IE, AFAIK).
kölsch
 2004-01-02 14:52
#627 #627
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
Doch, da bin ich mir sicher, er wollte dir .pl Datei speichern.
Es liegt tatsächlich daran, dass ich mit print versehentlich was ausgeben wollte und zusätzlich aber am Ende der subroutine zu einer Ausgabe-Routine verzweigt hab. Das war halt doppelt ausgegeben, und es hat nicht mehr funktioniert.
Aber ich weiß immer noch nicht, warum er dann beim Ausführen das ganze skript speichern wollte..
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2004-12-29 13:52.