PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Formular Überprüfen mit php


chr-fritz
02.11.2002, 10:15:50
hi,
wie überprüft mann am bessten mit php ein Formular.
kann mir jemand das script programieren. ohne Froumular und dem Ganzen nur das script zum überprüfen.

doudie
02.11.2002, 12:01:14
was genau willst Du prüfen?

- möchtest Du z.B. prüfen, ob ein Feld leer oder ausgefüllt ist?
- möchtest Du wissen, ob z.B. die Eingabe in einem Feld bestimmte Zeichen enthalten?
- willst Du prüfen, wie lang eine Eingabe ist (wieviele Zeichen)
- etc ....

wenn Du genau sagst was Du brauchst, und wofür, dann ist es leichter einen Lösungsvorschlag zu machen...

also mit ... <input type="text" name="var1"> ... erhäst Du nach der Eingabe eine Variable mit dem Namen: $var1
Diese Variable kannst Du dann auf alles Mögliche hin überprüfen...

chr-fritz
02.11.2002, 13:23:28
ich möchte eigentlich nur das Feld Name und E-mail prüfen.
Name: muss Ausgefüllt sein
E-mail: muss Ausgefüllt sein und die beiden zeichen "@" und "." enthalten
Das Forumular hab ich bereits.
Es soll dann vor dem Formularfeld ein Zeichen sein und oben dorten stehn das mann eine Email adresse eingeben soll

hier der Code:

<p><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<?
if(!isset($senden)){
?>
</font></b> </p>
<form action="PHPmailer.php" method="post">
<div align="center">
<table width="48%" border="0" cellspacing="2" cellpadding="0">
<tr>
<td width="44%"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
Ihr Name: </font></b></td>
<td width="56%"> <b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<input type="text" name="Name" size="50" maxlength="100">
</font></b></td>
</tr>
<tr>
<td width="44%" height="29"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
Ihre E Mail: </font></b></td>
<td width="56%" height="29"> <b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<input type="text" name="email" size="50" maxlength="100">
</font></b></td>
</tr>
<tr>
<td width="44%">
<p><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">Gew&uuml;nschter
Ansprechpartner:</font></b></p>
</td>
<td width="56%">
<select name="to_email">
<option value="webmaster@elektro-fritz.com">1. Vorstand Walter Poppe</option>
<option value="2. Vorstand Gustav Posch&lt;wemaster@elektro-fritz.com&gt;">2.
Vorstand Gustav Posch</option>
<option value="Webmaster Christian Fritz &lt;webmaster@elektro-fritz.com&gt;" selected>Webmaster
Christian Fritz</option>
</select>
</td>
</tr>
<tr>
<td width="44%"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">Woher
Kommen sie:</font></b></td>
<td width="56%">
<select name="kommen">
<option value="Rosenheim">Rosenheim</option>
<option value="Taunstein">Traunstein</option>
<option value="Muenchen">M&uuml;nchen</option>
<option value="Oberbayern">Oberbayern</option>
<option value="Niederbayern">Niederbayern</option>
<option value="Schwaben">Schwaben</option>
<option value="Bayern">Restliche Bayern</option>
<option value="Deutschland">Restliche Deutschland</option>
</select>
</td>
</tr>
<tr>
<td width="44%"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">Wie
Finden sie unsere Website:</font></b></td>
<td width="56%">
<select name="finden">
<option value="Sehr Gut">Sehr Gut</option>
<option value="Gut">Gut</option>
<option value="Mittel">Mittel</option>
<option value="Geht so">Geht so</option>
<option value="Schlecht">Schlecht</option>
</select>
</td>
</tr>
<tr>
<td width="44%"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
Kommentar: </font></b></td>
<td width="56%"> <b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<textarea cols="50" rows="6" name="Kommentar"></textarea>
</font></b></td>
</tr>
<tr>
<td colspan="2">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<input type="hidden" name="email_betreff" value="WaWa Prien/Rimsting Feedback Formular">
<input type="submit" name="senden" value="Mail Senden">
<input type="reset" name="Zur&uuml;cksetzen" value="Zur&uuml;cksetzen">
</font></b></div>
</td>
</tr>
</table>
</div>
</form>
<p><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<?
}
else{
$emailbody = '
<html>
<body bgcolor="#FFFFFF" text="#000000" link="#000099" vlink="#000099" alink="#FF0000">
<p>
' . $to_email . ' sie Bekamen von <a href="mailto:'. $email . '">'. $Name .' &lt;'. $email . '&gt;</a> folgende Nachricht.
</p>
<p>
' . nl2br($Kommentar) . '
</p>
<p>Woher kommen Sie: ' . $kommen .' </p>
<p>Wie Finden Sie unsere Website: '. $finden . ' </p>
-- --
<p>' . date("l") .' den' . date("d n Y") . ' um ' . date("G:i:s") . '</p>
-- --
<p>IP Adresse:
<a href="http://' . $REMOTE_ADDR . '">' . $REMOTE_ADDR . '</a>
<br>Benutzter Browser:<br>
' . $HTTP_USER_AGENT. '
</body>
</html>
';
$header .= "From:$name<$email>n";
$header .= "Reply-To: $email_from_mailn";
$header .= "X-Mailer: PHP/" . phpversion(). "n";
$header .= "X-Sender-IP: $REMOTE_ADDRn";
$header .= "Content-Type: text/html";
mail($to_email,$email_betreff,$emailbody,$header);
echo "<p>Diese E-mail wurde an $to_email gesand</p>";
echo "<p>Hier der Inhalt: $emailbody</p>";
}
?>

doudie
05.11.2002, 17:04:55
Teilweise Antwort/Lösung:

Um zu Prüfen, ob eine Eingabe überhaupt vorhanden ist, kannst Du einfach folgenden Code (blau) einfügen:
......
</form>
<p><b><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">
<?
}
else
{


if (!$Name) { echo "<br>... kein Name"; exit; }
if (!$email) { echo "<br>... keine Email"; exit; }

$emailbody = '
<html>
....

Suchen nach Zeichen könnte so gehen ...
$var1 = strchr($email,"@");
$var2 = strchr($email,".");

string_funktionen (http://www.selfphp.com/funktionsuebersicht/string_funktionen.php)
siehe auch mit JavaScript Überprüfung steht in SelfHTML (http://selfhtml.teamone.de/javascript/beispiele/formulareingaben.htm)