feedback formular via perl klappt leider nicht
chris
- perl
0 Peter Kaufmann0 Chris
hi leute,
ich habe ein feedback formular erstellt, sowie ein perl skript, welches ich mir hier aus dem forum zusammengeschniepselt habe.
m.e. muss es so klappen, aber ich bekomme leider ständig nur einen 500er error und ich weiß einfach nicht weiter.
nach dem drücken des send buttons soll übrigens eine dankeseite aufgerufen werden.
die html datei, sowie das perl script wurden im ascii modus übertragen. die perl datei hat die rechte 755.
nach abdrücken des send buttons kommt leider immer wieder die doofe errormeldung.
--------------------------------------
ich poste mal den code des perl scripts:
#!/usr/bin/perl
my $from = "Absender";
my $email = "info@rauth.info";
my $subject = "Feedback-Formular";
my $key = '';
my $val = '';
my %in = ();
my $in = '';
if ( $ENV{REQUEST_METHOD} eq 'POST'){
read(STDIN, $in, $ENV{CONTENT_LENGTH});
}else{
$in = $ENV{QUERY_STRING};#GET lesen
}
for(split/&/,$in){##Input nach Paaren splitten key=val
($key , $val) = split/=/;#splitten nach key=val
$key =~ y/+/ /;# + durch Space ersetzen
$key =~ s/%(..)/pack("c",hex($1))/ge;#Sonderzeichen decodieren
$val =~ y/+/ /;# + durch Space ersetzen
$val =~ s/%(..)/pack("c",hex($1))/ge;
$in{$key} .= $val;
}
print "Location: ../danke.html\n\n";
print "Content-type: text/html\n\n";
open (MAIL,"|/usr/sbin/sendmail -t");
print MAIL "From:$from\n";
print MAIL "To:$email\n";
print MAIL "Subject:$subject\n\n";
print MAIL"Anrede => $in{'anrede'}\n";
print MAIL"Name => $in{'name'}\n";
print MAIL"Strasse => $in{'strasse'}\n";
print MAIL"PLZ => $in{'plz'}\n";
print MAIL"Emailadresse => $in{'emailadresse'}\n";
print MAIL"Text => $in{'text'}\n";
print MAIL"Wunsch => $in{'wunsch'}\n";
close (MAIL);
-----------------------------------
ausschnitt auf der html datei:
<form action="/cgi-bin/feedback.pl" method="post">
<table border="0">
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">Anrede:</td>
<td width="200">
<select name="anrede">
<option>Auswahl</option>
<option>Herr</option>
<option>Frau</option>
<option>Firma</option>
</select>
</td>
</tr>
<tr>
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Ihr Name, Vorname: </td>
<td width="200">
<input name="name" size=20 maxlength=50>
</td>
</tr>
<tr>
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Ihre Straße, Nr.:</td>
<td width="200">
<input name="strasse" size=20 maxlength=50>
</td>
</tr>
<tr>
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Ihre PLZ, Wohnort:</td>
<td width="200">
<input name="plz" size=20 maxlength=50>
</td>
</tr>
<tr>
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Ihre E-Mail Adresse:</td>
<td width="200">
<input name="emailadresse" size=20 maxlength=50>
</td>
</tr>
</table>
<p></p>
<table border="0">
<tr>
<td width="180" valign="top"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Ihre Mitteilung:</td>
<td width="200"><textarea name="text" cols="20" rows="5" wrap="soft"></textarea>
</td>
</tr>
</table>
<p></p>
<table border="0">
<tr>
<td width="180" valign="top"><font face="Verdana, Arial" size="1" color="#FFFFFF">
Interesse:
</td>
<td width="200">
<select name="wunsch" size="1">
<option>Auswahl</option>
<option>Internet Seminare A-Z</option>
<option>Computer Kaufberatung</option>
<option>Hardware-Installation</option>
<option>Software-Installation</option>
<option>Beratung</option>
<option>Kontaktaufnahme</option>
</select>
</td>
</tr>
</table>
<p></p>
<table border="0" align="center">
<tr>
<td width="180"><font face="Verdana, Arial" size="1" color="#FFFFFF">Formular</td>
<td width="200">
<input type="submit" value="Send" name="Abschicken">
<input type="reset" value="Reset" name="Zurücksetzen">
</tr>
</form>
---------------------------------------
kommt ihr drauf was falsch sein muss?
wäre dankbar für ein bissl input.
gruss chris
Hallo chris,
m.e. muss es so klappen, aber ich bekomme leider ständig nur einen 500er error und ich weiß einfach nicht weiter.
ich habe das Script bei mir ohne das drumherum laufen lassen (SuSE GNU/Linux 7.3) und alles war in Ordnung. Also tippe ich ins Blaue hinein:
Hast du Zugriff auf die Logdatei? Steht da keine genauere Fehlermeldung?
Wenn du keinen Zugriff hast verwende doch mal
CGI::Carp qw(fatalsToBrowser)
Viel Glück bei der Fehlersuche,
Peter
Hi Peter,
ich habe das Script bei mir ohne das drumherum laufen lassen (SuSE GNU/Linux 7.3) und alles war in Ordnung.
-- wenigstens dass. das bringt mich imens weiter. danke.
gruss chris.