Hallo,
ich möchte ein kleine CGI-Formular bereitstellen, bekoome aber laufend den 500-Error.
(Basepath, Pfad zum mailserver und perlpfad #!/usr/bin/perl5 sind korrekt).
Kann jemand helfen, hier der kleine Hack:
#!usr/bin/perl5
##################################
$basepath='/myserver.com/';
#######################################################
if ($form{'action'} eq 'feedback') { &feedback; }
$mailserver = "/usr/sbin/sendmail";
#######################################################
print "Content-Type: text/html\n\n";
#########################################################
if ($form{'action'} eq 'feedback') { &feedback; }
print <<"EOF";
<html>
<head>
<title>Feedback</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" background="images/bg.jpg">
<form method="POST" input type="hidden" name="action" value="feedback" action="$ENV{'SCRIPT_NAME'}">
<p align="center"><font color="#80000" size="5"> Feedback</font></p>
<p align="center"><img src="images//logo.gif" width="120" height="120"></p>
<p align="center"><TR>
<TD VALIGN=TOP> </TD>
<TD>
<div align="center">
<table width="70%" border="0">
<tr>
<td>Ihr Name:</td>
<td>
<input type="radio" name="Frau" >
Frau
<input type="radio" name="Herr" >
Herr
<input type="text" name="name" size="35" maxlength="35" >
</td>
</tr>
<tr>
<td>Ihre EMail-Adresse:</td>
<td>
<input type="text" name="email" size="35" maxlength="35" >
(optional) </td>
</tr>
<tr>
<td>Ihre Telefonnummer: </td>
<td>
<input type="text" name="telefon" size="35" maxlength="35" >
(optional) </td>
</tr>
<tr>
<td>Bitte rufen Sie mich zurück</td>
<td>
<input type="checkbox" name="TelefonJa" >
Ja, zwischen
<input type="text" name="textfield2" size="20">
Uhr
<input type="checkbox" name="TelefonNein" >
Nein </td>
</tr>
<tr>
<td>Bitte antworten Sie mir per EMail</td>
<td>
<input type="checkbox" name="emailJa">
Ja
<input type="checkbox" name="emailnein" >
Nein </td>
</tr>
</table>
<br>
</div>
<center>Ihre Wünsche, Fragen, Anregungen:</center>
<p align="center">
<textarea name="text" cols="50" rows="6" ></textarea>
</p>
<p align="center"> </p>
<p align="center">
<input type="submit" name="Submit" value="Abschicken">
<input type="reset" name="delete" value="Inhalt löschen">
</p>
</form>
</body>
</html>
EOF
##############################################
sub sendemail {
$TO=$_[0]; @TO=split('\0',$TO);
$SUBJECT=$_[1];
$REPLYTO=$_[2];
$REMOTE = $_[3];
$THEMESSAGE = $_[4];
open(S, "$REMOTE -t");
print S "To: $TO[0]\n";
print S "From: <SMTPMAIL>\n";
print S "Subject: $SUBJECT\n";
print S "Reply-To: $REPLYTO\n\n";
# Print the body
print S "$THEMESSAGE\n";
print S "\n";
print S ".\n";
close (S);
}
sub feedback {
&oops('email') unless ($form{'email'});
&oops('Text') unless ($form{'Text'});
$form{'EMAIL'} = $email;
&sendemail('Feedback', $form{'EMAIL'}, $mailserver, "$form{'Text'}, $form{'email'}, $form{'telefon'}");
print "<CENTER><B>Vielen Dank, Ihr Feedback ist bei uns angekommen! </B>Clicken Sie bitte <a href='http://www.myscript.de'>Hier</a> um zurückzukehren</CENTER>"
}
sub oops {
print "Bitte geben sie in jedem Fall Ihre EMail-adresse und einen Text ein. Drücken Sie den Back-Button Ihres Browsers um zurückzukehren";
}