perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 34
Click for quality!




10.02.2012 / 20:38

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragPerl+Apache auf localhost (auf Heimrechner testen) Problem
Seitenanfang
Hallo Leuts,

Perl und Webserver Apache installiert und konfiguriert.

Folegendes: Ich hab ein PerlScribt, dass wenn ich es über den Browser aufrufe problemlos funktioniert und eine Ausgabe liefert. Eigentlich soll dieses Script jedoch von einer html seite aus gestartet werden, nachdem diese das script mittels form action mit daten gefüttert hat. Wenn ich dann jedoch den submmitbutton drücke, wird das script nicht über den browser aufgerufen, sondern iurgendwie runtergeladen oder so und eine art dos fenster unst für nicht mal eine sekunde sichtbar. Was ist da los?

Muss man den Apache vielleicht irgendwie noch extra konfigurieren, dass er perl scripte von html seiten starten darf??

Hier das Beispielprogramm und Htmlseite:

#!d:/perl/bin/perl.exe
# Übertragunhsmethode GET
if($ENV{'REQUEST_MODE'} eq'GET')
{
$eingabe = $ENV{'QUERY_STRING'}
}
# Übertragunfmethode POST
else {
read(STDIN, $eingabe, $ENV{'CONTENT_LENGTH'});
}
# Wertepaaare trennen

@paare = split(/&/, $eingabe);
foreach $paar (@paare)
{
($schluessel, $wert) = split(/=/, $paar);
#Sonderzeichen erstezen
$wert =~ tr/+ // ;
$wert =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack
("C", hex($1))/eg;
#Hash mit Daten erstellen
$FORM{$schluessel}=$wert;
}
#html ausgabe vorbereiten
print "Content-Type: text/html\n\n";
# Ausgabe der Daten
print "<html><body>";
print "<h2>Originaldaten:</h2>";
print "$eingabe<p>";
print "<h2>Bearbeitete Daten:</h2>";
while(@array=each(%FORM))
{
print "$array[0]: $array[1]<br>";
}
print "</body></html>";
----------------------------------------------------------------------------------------------
<html>
<body bgcolor="#ffffff" text="#000000">
<h1>Datenübertragung</h1>
Tragen Sie in alle Felder etwas ein<br>
und klicken Sie auf den Button.<p>
<form action="cgi-bin/daten.pl" method="post">
Name: <input type="text" name="name" size="35"><br>
PLZ: <input type="text" name="plz" maxlength="5" size="7"><br>
Haarfarbe:<br>
<input type="radio" name="haar" value="blond">
blond<br>
<input type="radio" name="haar" value="braun" checked>
braun<br>
<input type="radio" name="haar" value="andere">
andere<br>
Verheiratet? <input type="checkbox" name="heirat" value="ja"><br>
<input type="hidden" name="seite" value="daten.html">
Beliebiger Text:<br>
<textarea cols="50" rows="4" name="text"></textarea><br>
<input type="submit" value="absenden">
<input type="reset" value="löschen">
</body>
</html>

danke

Datum: 26.07.2005-09:12

Beitragre: Perl+Apache auf localhost (auf Heimrechner testen) Problem
Seitenanfang
hey ich habs geschafft. der fehler war, dass ich die html datei nicht über den browser geöffnet habe, also htttp://localhost/daten.html, sondern einfach doppelgeklickt habe und dann mit totalem pfad d:/../... offen hatte. das ging wohl nich....so hoffe kein anderer beginner macht den fehler....

Datum: 26.07.2005-13:57

Beitragre: Perl+Apache auf localhost (auf Heimrechner testen) Problem
Seitenanfang
Hi,

klare Sache das. Wenn Du einen Doppelklick auf das Skript machst, öffnet Windows eine shell in der das skript ablaufen wird. Dort wird es die Umgebungsvariablen prüfen und die Ausgabe an die STDOUT senden. Was in unserem Falle natürlich nichts bringt, weil der Apache die Umgebungsvariablen zu Verfügung stellt, und Dein Skript sie nur zu sehen bekommt, wenn der Apache es startet.

-uw

Datum: 26.07.2005-17:37

-






-
-