You are not logged in.

  • Login

1

Saturday, May 14th 2011, 6:49pm

Pflichtfelder in Formularscript

Hallo easy-coding Community,
ich bin sowohl hier, als auch in PHP ein ziemlicher Neuling :D
Ich mache grade erste Schritte, indem ich ein Script für ein Formular code und ich würde gerne einige der Formularfelder zu Pflichtfeldern machen.
Also, sollte jemand eines der Pflichtfelder nicht ausgefüllt haben, soll er zurück zur Formularseite geleitet werden, wo er über dem Formular eine Fehlermeldung sieht. Die Felder die er bereits ausgefüllt sind sollten dies auch bleiben, damit er nicht alles neu eintippen muss.
Könnt ihr mir sagen wie ich das mache? Bitte etwas ausführlicher, da ich wie gesagt, noch ziemlich neu bin.

Code für das Formular:

HTML Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<div id="kontaktformular">
	<form action="kontakt.php" method="post">
	<p>Felder mit <span class="star">*</span> sind Pflichtfelder!<br/>
	<br />
	Name:<span class="star">*</span> <input type="text" name="name" /><br />
	E-Mail:<span class="star">*</span> <input type="text" name="email" /><br />
	Homepage: <input type="text" name="homepage" /><br />
	</p>
 
	<p>An wen soll die Nachricht gehen?<span class="star">*</span>
	<select name="empfang">
	<option value="alle">Amaze Records</option>
	<option value="impulze">ImPulZe</option>
	<option value="iceman">iceman</option>
	<option value="webmaster">Webmaster</option>
	</select>
	</p>
 
	<p>Nachricht:<span class="star">*</span><br />
	<textarea name="nachricht" rows="8" cols="70"></textarea>
	</p>
 
	<p>
	<input type="submit" value="Absenden" />
	</p>
	</div>


Und das dazugehörige Script:

PHP Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
 
		$email = $_POST['email'];
 
		$name = $_POST['name'];
 
		$homepage = $_POST['homepage'];
 
		$empfang = $_POST['empfang'];
 
		$nachricht = $_POST['nachricht'];
 
 
		echo 'Das Formular wurde erfolgreich gesendet und wird an ' . $empfang . ' weitergeleitet.<br />';
	?>


Danke schonmal für eure Hilfe,
Darthii

This post has been edited 2 times, last edit by "Torben Brodt" (May 15th 2011, 10:59am)


2

Saturday, May 14th 2011, 7:45pm

Hey ;D.

In der Bar unter dem Editor findest du Syntax. Bitte heb den Code demnächst in der richtigen Sprache vor, dann kann man sich den besser durchlesen ;D.

Setz in Zeile 12, bzw. vor dem "echo", die Überprüfung hin. Mittels <strlen> bekommst du die Lenge der Zeichenkette raus. Wenn diese 0 ist, so ist das Feld leer:

PHP Quellcode

1
2
if (strlen($email) == 0) echo 'Bitte gib eine E-Mail ein!';
else echo 'Das Formular wurde erfolgreich gesendet und wird an ' . $empfang . ' weitergeleitet.<br />';

3

Sunday, May 15th 2011, 1:52pm

Wieso strlen?
Ich zB. benutze die empty-Funktion

PHP Quellcode

1
2
3
4
5
if(!empty($_GET['variable'])){
echo "Variable ist NICHT leer!";
// code
// code
}


Du kannst zu dem per HTML5 oder auch JS ein clientseitigen Check einfügen.
http://stackoverflow.com/questions/30047…attribute-html5

This post has been edited 1 times, last edit by "Nippel" (May 15th 2011, 1:58pm)


4

Monday, May 16th 2011, 8:16am

trimmen wäre vllt. auch ne ganz nette Idee.

Social bookmarks