Hallo, ich hab ein Problem...(klar sonst wäre ich ja nicht hier ...grins) zwar hab ich schon gesehen, da jemand ein ähnliches Problem hatte aber das hilft mir leider nicht weiter. Und zwar habe ich ein CGI-Script zum auslesen von einem Formular erstellt, die beiden harmonieren auch wunderbar zusammen und es klappt auch alles super, jetzt möchte ich aber bestimmte Felder und zwar Kurs,Haftung,Name,Vorname,Straße,Ort,Telefon,E-mailadresse als Pflichtfelder definieren und möchte, daß das Formular nur dann abgeschickt wird, wenn diese auch alle ausgefüllt sind, ansonsten soll eine Fehlermeldung geschickt werden...was muss ich ändern? Ich hab schon vieles ausprobiert aber nichts klappt, er schickt es immer weg obwohl nix ausgefüllt ist...
Hier mein Formular
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Kölner Pferdeakademie - Buchen</title>
</head>
<body style="color: rgb(0, 0, 0);" alink="#cc3300"
link="#000000" vlink="#cc3300">
<div id="Layer1"
style="position: absolute; top: 10px; width: 596px; height: 720px; z-index: 2;"><b><font
color="#cc3300" size="+2">Anmeldung</font></b>
<br>
<form action="http://www.pferdemanager.de/cgi/feedback.pl"
method="get"> <input name="return"
value="http://www.pferdemanager.de/index-Dateien/Feedback.html"
type="hidden">
<input name="delimiter" value=": " type="hidden"><input
name="subject" value="Feedback-Formular" type="hidden"><br>
<table style="left: 285px; width: 609px;" border="0"
cellpadding="3" cellspacing="2">
<tbody>
<tr>
<td colspan="3" align="left">
<p style="line-height: 150%;"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Hiermit
melde ich mich für den Kurs <span
style="font-style: italic;">(bitte Kursname &
Anfangsdatum angeben)</span></span></p>
<p style="line-height: 150%;"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;"><span
style="font-style: italic;"></span><input size="80"
name="kurs*"><br>
verbindlich an. <o:p></o:p></span></p>
<table border="0" cellpadding="0" width="822">
<tbody>
<tr>
<td width="38"> <b><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;"><input
name="Haftung*" type="checkbox"></span></b></td>
<td style="width: 532px;">
<div align="left"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Ich
habe die Hinweise und den Haftungsausschluss am Ende der Seite gelesen
und </span><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">akzeptiere
die darin enthaltenen Bestimmungen.</span></div>
</td>
<td style="width: 236px;"></td>
</tr>
</tbody>
</table>
<p style="line-height: 150%;"><span
style="font-size: 10.5pt; font-family: Arial; color: black;">Die
Teilnahmegebühr zuzüglich 19% Mehrwertsteuer <span
style="font-size: 9pt;"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">ist
vor Seminarbeginn zu überweisen.</span></span></span></p>
<p style="line-height: 150%;"><span
style="font-size: 10.5pt; font-family: Arial; color: black;"><span
style="font-size: 9pt;"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;"></span>
</span></span></p>
</td>
</tr>
</tbody><tbody>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Name:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="name*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Vorname:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="Vorname*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Straße:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="Straße*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Ort:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="Ort*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Ihre
Emailadresse:</span> </td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="E-mailadresse*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Telefon-Nummer:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="Telefon*" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td style="text-align: right; width: 120px;"> <span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Fax-Nummer*:</span>
</td>
<td width="394"> <b><font color="#000000"
face="Verdana, Arial, Helvetica, sans-serif"><input
name="fax" size="49" style="font-size: 16px;"></font></b></td>
</tr>
<tr>
<td align="right" valign="top" width="120">
<span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;"><br>
Kommentar*:</span> </td>
<td style="width: 1px;"><b><font
color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><textarea
cols="35" name="comment" rows="5"
style="font-size: 16px;"></textarea></font></b></td>
</tr>
<tr>
<td colspan="3" align="left"> <font
color="#000000" face="Verdana, Arial, Helvetica, sans-serif"
size="2">Die
mit * gekennzeichneten Felder sind
optional. Die anderen Felder sind Pflichtfelder.</font> </td>
</tr>
<tr>
<td colspan="3"> <input name="kontakt_must"
value="yes" type="hidden">
<table border="0" cellpadding="0" width="822">
<tbody>
<tr>
<td width="38"> <b><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;"><input
name="Hotel[]" value="1" type="checkbox"></span></b></td>
<td width="711">
<div align="left"><span
style="font-size: 10.5pt; line-height: 150%; font-family: Arial; color: black;">Ich
benötige ein Hotel. Bitte senden Sie mir
Zimmernachweise zu.</span></div>
</td>
<td width="64"></td>
</tr>
<tr>
<td></td>
<td></td>
<td> </td>
<td></td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td colspan="3"> <b><font
face="Verdana, Arial, Helvetica, sans-serif"><input
name="next" value="Abschicken" type="submit"> <input
name="next" value="Zurücksetzen" type="reset"></font></b></td>
</tr>
</tbody>
</table>
<input name="clsid" value="18f955b37d50196d3116d57efa79ebd7"
type="hidden"> <input name="doit" value="yes"
type="hidden"></form>
</div>
</body>
</html>
Und hier mein CGI-Script:
#!/usr/bin/perl -w
$Sendmail_Prog = "/usr/sbin/sendmail";
$mailto = 'seddig@koelnerpferdeakademie.de';
use CGI;
# -------> Modul für CGI-Scripts zum Einlesen der Formulardaten anwenden:
$query = new CGI;
@names = $query->param;
# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value
$returnhtml = $query->param('return'); # ---> URL für Dankeseite
$subject = $query->param('subject'); # ---> E-Mail-Subject
# -------> alle Whitespace-Zeichen (Leerzeichen, Tabulator, Newline) in Leerzeichen wandeln
# VERHINDERT sonst möglichen MISSBRAUCH des Skripts
$subject =~ s/\s/ /g;
# -------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "";
foreach(@names) {
$name = $_;
@values = "";
@values = $query->param($name);
if($name ne "return" && $name ne "subject" && $name ne "delimiter") {
foreach $value (@values) {
$mailtext = $mailtext.$name;
$mailtext = $mailtext.$delimiter;
$mailtext = $mailtext.$value."\n";
}
}
}
# -------> E-Mail versenden:
open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: $mailto\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);
# -------> Dankeseite an Browser senden:
print "Location: $returnhtml\n\n";
Ich bin über einen Tip oder Schubs in die richtige Richtung echt dankbar!
LG Kristin