PHPGreenHorn |
05.02.2008 08:09:15 |
Formular erweitern
Hallo Forumsmitglieder,
leider habe ich schon seit langer Zeit nichts mehr in PHP geschrieben und stoße wieder einmal sehr schnell an meine Grenzen.
Wenn Ihr mir helfen könnt wäre SUPER.
Im folgenden Bsp habe ich ein Formular erstellt, das Formular funktioniert auch ohne Probleme.
Code:
<html>
<head>
<title>Formular</title>
</head>
<body>
<?php
if (isset($_GET['submit'])) {
$ausgabe = '';
$fehler = '';
$betrag="/^[1-9]{3}$/";
$var = $_GET['euro'];
if (isset($_GET['vorname']) && !is_array($_GET['vorname']) && $_GET['vorname'] != '') {
$ausgabe .= 'Vorname: ' . htmlspecialchars($_GET['vorname']) . "\n";
} else {
$fehler .= 'Kein Vorname eingegeben!<br />';
}
if (isset($_GET['nachname']) && !is_array($_GET['nachname']) && $_GET['nachname'] != '') {
$ausgabe .= 'Nachname: ' . htmlspecialchars($_GET['nachname']) . "\n";
} else {
$fehler .= 'Keinen Nachnamen eingegeben!<br />';
}
if (isset($_GET['email']) && !is_array($_GET['email']) && $_GET['email'] != '') {
$ausgabe .= 'Email: ' . htmlspecialchars($_GET['email']) . "\n";
} else {
$fehler .= 'Keine Email-Adresse eingegeben!<br />';
}
if (isset($_GET['euro']) && !is_array($_GET['euro']) && $_GET['euro'] != '.$var') {
$ausgabe .= 'Spendenbetrag: ' . htmlspecialchars($_GET['euro']) . "\n";
} else {
$fehler .= 'Kein Spendenbetrag eingegeben!<br />';
}
if ($fehler == '') {
@mail('', 'Info Spendenformular', $ausgabe);
echo '<b>Vielen Dank für Ihre Angaben!</b>';
echo '</body></html>';
exit();
} else {
echo "<b>$fehler</b>";
}
}
?>
<h2>Spendenformular</h2>
<p>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="get">
<br />Vorname:
<input type="text" name="vorname" size="15" value="<?php
if (isset($_GET['vorname']) && !is_array($_GET['vorname'])) {
echo htmlspecialchars($_GET['vorname']);
}
?>" />
<br />Nachname:
<input type="text" name="nachname" size="15" value="<?php
if (isset($_GET['nachname']) && !is_array($_GET['nachname'])) {
echo htmlspecialchars($_GET['nachname']);
}
?>" />
<br />email:
<input type="text" name="email" size="25" value="<?php
if (isset($_GET['email']) && !is_array($_GET['email'])) {
echo htmlspecialchars($_GET['email']);
}
?>" /> <br />
Spendenbetrag pro Runde
<input type="text" name="euro" size="2" value="<?php
if (isset($_GET['euro']) && !is_array($_GET['euro'])) {
echo htmlspecialchars($_GET['euro']);
}
?>" />€<br />
<input type="submit" name="submit" value="Versenden" />
</form>
</p>
</body>
</html>
Jetzt möchte ich nur versuchen im "Feld" email und euro, zwei Fehler abzufangen.
In Feld email sollte so eine Abfrage stehen.
Code:
"^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$"
und im "Feld" email sollten nur Zahlen erlaubt sein.
Wenn ich das richtig gelesen habe, müsste beides mit der "Anweisung" ereg funktionieren.
Leider bekomme ich diese Anweisung nicht in mein Formular eingebaut.
Wie kann ich die Abfrage mit e reg in mein Aktuelles Formular einbinden?
Gruß und Danke
PHPGreenHorn
|