Autor |
Nachricht |
LenaP
Threadersteller
Dabei seit: 16.05.2012
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mi 16.05.2012 11:37
Titel PHP Formular: Select Boxen abfragen? |
|
|
Hallo
ich bin hier bisher nur stille mitleserin, aber nun muss ich auch mal eine Frage stellen...
Ich bastel gerade eine Internetseite mit einem PHP-Kontaktformular.
Ich kann eigentlich kein PHP, habe das Formular aber funktionsfähig hinbekommen.
Nun solle aber noch ein Pflichtfeld mit der Abfrage "Herr oder Frau" rein.
Dies wollte ich mit einer select box umsetzen.
Welche ein Pflichtfeld sein soll.
Kann mir jemand sagen, wie ich die select box nun funktionsfähig mache und in mein vorhandenes PHP-Sript einbaue?
In dem HTML Teil taucht sie schon auf, aber dann wusste ich nicht weiter...
Ich wäre für Hilfe sehr sehr dankbar!!!!
Wie gesagt, ich habe keine Ahnung von PHP.... ;o(
Schöne Grüße
Lena
Hier kommt mein Script:
Code: |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<meta name="" />
<meta name="description" content="" />
<title>Test</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
</head>
<body style="background-color:#ffffff; margin-top:0px; margin-bottom:0px; margin-left:0px;">
<?php
$von = $_POST['von'];
$firma = $_POST['firma'];
$adresse = $_POST['adresse'];
$tel = $_POST['tel'];
$email = $_POST['email'];
$branche = $_POST['branche'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
$fertig = $_POST['fertig'];
function checkEmail( $email )
{
$nonascii = "\x80-\xff";
$nqtext = "[^\\\\$nonascii\015\012\"]";
$qchar = "\\\\[^$nonascii]";
$normuser = '[a-zA-Z0-9][a-zA-Z0-9_.-]*';
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = '[a-zA-Z0-9][a-zA-Z0-9._-]*\\.';
$dom_subpart = '(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*';
$dom_tldpart = '[a-zA-Z]{2,5}';
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$pattern = "$user_part\@$domain_part";
if (!preg_match( "/$pattern$/", $email ))
{
return FALSE;
}
else
{
return TRUE;
}
}
if(isset($fertig)){
if ($von == "") {
echo"<script type=\"text/javascript\"> alert(\"Sie haben ihren Namen nicht angegeben!\");</script>";
} elseif ($email == "") {
echo"<script type=\"text/javascript\"> alert(\"Sie haben ihre Email nicht angegeben!\");</script>";
} elseif ($branche == "") {
echo"<script type=\"text/javascript\"> alert(\"Sie haben keine Branche angegeben!\");</script>";
} elseif ($betreff == "") {
echo"<script type=\"text/javascript\"> alert(\"Sie haben keinen Betreff angegeben!\");</script>";
} elseif ($nachricht == "") {
echo"<script type=\"text/javascript\"> alert(\"Sie haben keine Nachricht angegeben!\");</script>";
} elseif (!checkEmail( $_REQUEST['email'] )) {
echo"<script type=\"text/javascript\"> alert(\"Die Email Adresse ist nicht gültig!\");</script>";
} else {
$datum = date("d.m.Y");
$uhrzeit = date("H:i");
$datum=$datum ."-". $uhrzeit ."Uhr";
$ich = "test@test.de";
$betreffemail = "Kontaktformular";
$text ="Sie haben eine Nachricht von: ".$von.
"\n Absender Firmenname: ".$firma.
"\n Absender Adresse: ".$adresse.
"\n Absender Telefonnummer: ".$tel.
"\n Absender Email-Adresse: ".$email.
"\n Branche: ".$branche.
"\n Der Betreff lautet: ".$betreff.
"\n Das Sendedatum: ".$datum.
"\n\n Die Nachrich lautet:\n\n".$nachricht."
";
mail($ich, $betreffemail, $text,
"From: Absender <Absenderemail>");
echo"<span class=\"textcontent\"><strong>Die Nachricht wurde erfolgreich verschickt!</strong></span>";
echo"<script type=\"text/javascript\"> alert(\"Die Nachricht wurde erfolgreich verschickt!\");</script>";
}
}
?>
<form action="" method="post">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="textcontent" valign="middle">Geschlecht<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;">
<select class="textcontent" name="geschlecht">
<option class="textcontent" value="">Bitte wählen...</option>
<option class="textcontent" value="H">Herr</option>
<option class="textcontent" value="F">Frau</option>
</select>
</td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihr Name:<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="von" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihr Firmenname:</td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="firma" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihre Adresse:</td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="adresse" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihre Telefonnummer:</td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="tel" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihre Email-Adresse:<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="email" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Ihre Branche:<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="branche" /></td>
</tr>
<tr>
<td class="textcontent" valign="middle">Betreff:<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px; padding-top:5px;"><input size="40" class="textcontent" type="text" name="betreff" /></td>
</tr>
<tr>
<td class="textcontent" valign="top">Ihre Nachricht:<span style="color:red;">*</span></td>
<td class="textcontent" style="padding-left:10px;padding-right:8px; padding-top:5px;"><textarea class="textcontent" name="nachricht" cols="45" rows="10"></textarea></td>
</tr>
<tr>
<td class="textcontent" align="right" colspan="2" style="padding-top:15px;">
<button style="border:0px solid #ffffff; background-color:#ffffff;" name="fertig" type="submit">
<img src="../img/abschicken_button.gif" onmouseover="but.src='../img/abschicken_button_on.gif'" value="Absenden" onmouseout="but.src='../img/abschicken_button.gif'" width="86" height="20" name="but" alt=""><br>
</button>
</td>
</tr>
<tr>
<td class="textcontent" align="left" colspan="2" style="padding-left:10px; padding-top:15px;"><span style="color:red;">*</span> Diese Felder müssen ausgefüllt werd.</td>
</tr>
</table>
</form>
</body>
</html> |
|
|
|
|
|
Renao
Dabei seit: 11.05.2012
Ort: Herten
Alter: 39
Geschlecht:
|
Verfasst Mi 16.05.2012 11:53
Titel
|
|
|
Du kannst die Daten der Select-Box genauso abgreifen, wie bei den anderen Formular-Elementen via
$var = $_POST['anrede'];
Dann sollte der value-Wert in die Variable gespeichert werden (Also in deinem Falle F oder H).
Ansprechender fände ich allerdings die Gestaltung mit Radio-Buttons (http://de.selfhtml.org/html/formulare/auswahl.htm#radiobuttons), aber gibt sicherlich seine Gründe, warum du eine Selection-Box ausgewählt hast.
|
|
|
|
|
Anzeige
|
|
|
Alex
Dabei seit: 29.11.2005
Ort: Dortmund
Alter: 37
Geschlecht:
|
Verfasst Mi 16.05.2012 11:54
Titel
|
|
|
Sorry, dass du jetzt den Frust abbekommst, aber das ist nu wirklich eine Sache die man sich auch schnell ergooglen kann!
Gut, du willst hilfe? Dann such mal nach "php selectbox auslesen", mehr Hilfe ist beim besten Willen von meiner Seite aus nicht drin.
Nur mal so interessehalber:
Willst du PHP usw lernen und baust deshalb die Webseite oder wie kommst du dazu?
Gelernt zu haben scheinst du es ja nicht, daher die Frage.
|
|
|
|
|
immerIch
Dabei seit: 19.10.2010
Ort: #mein{display:block}
Alter: 35
Geschlecht:
|
Verfasst Mi 16.05.2012 12:02
Titel
|
|
|
Bitte Request-Parameter (POST/GET) nicht ungeprüft in dein Script laufen lassen.
-> http://php.net/manual/de/function.isset.php
Zwar fragst du mit Javascript vorher bereits ab, ob ein Feld leer ist. Was passiert aber bei deaktiviertem JS, und vor allem was passiert mit den nicht-Pflicht-Feldern.
|
|
|
|
|
qualidat
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mi 16.05.2012 12:50
Titel
|
|
|
Verständnis-Frage: Wieso ist eigentlich die auswertende Seite (PHP-Code) die gleiche, wie die, auf der sich das Formular (form-element) befindet? Ist keine Kritik, will's nur wissen ...
|
|
|
|
|
LenaP
Threadersteller
Dabei seit: 16.05.2012
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mi 16.05.2012 17:38
Titel
|
|
|
Hallo Renao,
vielen Dank!!! Das war mir nicht klar... Das hat mir sehr geholfen! Und es funktioniert! ;o)
Klasse! Danke!
Alex:
Ich habe mir das alles schon zusammengegoogelt und bin stolz es soweit zusammen gebaut zu haben, dass es funktioniert... Aber an dieser Stelle bin ich einfach gescheitert. Ich habe sehr wohl nach "php selectbox auslesen" gesucht, wusste aber nicht, wie ich es mit meinem vorhandenem Formular kombinieren kann... Ich brauchte genau diesen entscheidenden Tipp von Renao um weiter zu kommen. Vielen Dank! ;o)
Ich will mein Wissen erweitern und das eine oder andere lernen. Erst einmal reicht es mir aber, das Formular soweit hinbekommen zu haben.
immerIch :
Danke, werde das checken...
qualidat:
Wie gesagt, ich habe es mir so zurecht gegoogelt und bin froh, dass es funktioniert ;o)
LG
Lena
|
|
|
|
|
Renao
Dabei seit: 11.05.2012
Ort: Herten
Alter: 39
Geschlecht:
|
Verfasst Do 17.05.2012 13:17
Titel
|
|
|
qualidat hat geschrieben: | Verständnis-Frage: Wieso ist eigentlich die auswertende Seite (PHP-Code) die gleiche, wie die, auf der sich das Formular (form-element) befindet? Ist keine Kritik, will's nur wissen ... |
Mache ich auch gerade bei Formularen ganz gerne. Hat im Grunde den großen Vorteil, dass man alles in einer Datei beisammen hat und man muss nicht jede Datei wieder anpacken, wenn sich mal bspw. ein Dateiname geändert hat.
Nachteile? Gibt es bestimmt auch, aber die gibt es immer.
Lena: Keine Ursache. Immerhin war die Antwort an sich kürzer als "google nach selectboxen"
Zuletzt bearbeitet von Renao am Do 17.05.2012 13:18, insgesamt 1-mal bearbeitet
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
|
|
|
|
|
|
|
Ähnliche Themen |
select-Boxen per PHP dynamisch aus ner DB füllen
AJAX/PHP-Ausgabe mit zwei Select-Boxen
Zusammenfügen 2er Abfragen bei PHP Formular...
Html-Formular absenden mit Enter-Tase und select geht nicht
select-box option aktiviert select-box
checkox abfragen ...
|
|