| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Auswahlfeld in MySQL eintragen im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Einen wunderschönen Guten Abend zusammen, hab hier ein gemeines Problem, und zwar habe ich ein Auswahlfeld mit 3 wichtigen ...
![]() |
| | #1 (permalink) |
| Registriert seit: 25.05.08 ![]() Likes: 0 | Auswahlfeld in MySQL eintragen Anzeige Einen wunderschönen Guten Abend zusammen, hab hier ein gemeines Problem, und zwar habe ich ein Auswahlfeld mit 3 wichtigen Werten: Code: <select name="blub">
<option value='input[1]'>-----</option>
<option value='input[2]'>1</option>
<option value='input[3]'>2</option>
<option value='input[4]'>3</option>
</select> Dachte mir eventuell die value werte via PHP-Code: Naja hoffe konnte die Frage gut Schildern, danke im vorraus Grüße |
| | |
| | #2 (permalink) |
| in diesem fall muss sich die funktion isset schon auf "blubb" beziehen. also isset($blubb). auf die values kannst du so ja garnicht zugreifen, da man ja variablen prüft und der value ist keine variable sondern wie der name schon sagt der wert. | |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Member of Honour ![]() | Um das nochmal zu verdeutlichen :-D Code: <form method="POST" action="...">
<select name="VARIABLENNAME">
<option value='WERT0'>-----</option>
<option value='WERT1'>1</option>
<option value='WERT2'>2</option>
<option value='WERT3'>3</option>
</select>
</form> Code: <?PHP
$formular_variable = (typ) $_POST['VARIABLENNAME'];
if($formular_variable == "WERT1")
{
#Datenbankzeugs
}
?> Besonders wichtig ist das bei GET Abfragen oder wenn man input type=text hat und diese in die Datenbankabfrage einbaut. GET Variablen sollten am besten immer nur integer sein (der Einfachheit halber. nicht zwingend) und können dann mit einem einfach "$variable = (integer) $form_variable" konvertiert werden. Damit können nur integer passieren. Bei Strings ist das schwieriger, dort musst du dann eventuell prüfen ob unerlaubte Zeichen vorhanden sind (i.d.R. gibt man nur die erlaubten Zeichen an und überprüft ob sonst nichts weiter im string ist - unerlaubte heraussuchen wäre sehr aufwendig). lG Brabax
__________________ << Wir leben bereits im morgigen Gestern, doch vom gestrigen Morgen sind wir noch weit entfernt. >> << Träume sind Schäume. Es liegt an dir ob du sie lebst oder ein Schaumschläger bist! >> << Erst wenn man beginnt zu implizieren, wird man merken, dass einem sowieso keiner richtig zuhört. >> |
| | |
| | #4 (permalink) |
| Guest Likes: | Von der Verwendung des Get-Arrays rate ich ab, da mann sonst einfach stupide URL-Anfragen an deinen Server schicken kann, und schauen kann was passiert. Für die Absicherung gab es hier schonmal ein paar Threads(Stichwort prepared Statements). Casten der Werte schützt nicht vor SQL-Injections(wie sieht es mit Strings aus),zumal PHP eine schwach getypte sprache ist. Das Überprüfen der Eingaben der Benutzer ist auch so eine Sache: 1.macht es das ganze langsamer als nötig 2.kann man mit sicherheit Sachen übersehen. 3.Es schrängt den Benutzer in der Eingabe ein. mfg sw33t |
|
| | #5 (permalink) |
| Themenstarter Registriert seit: 25.05.08 ![]() Likes: 0 | HeyHo, erstmal danke für eure Antworten, wenn ich euch jetz richtig verstanden habe sollte es so möglich sein : Code:
<select name="input[]">
<option value='1'>-----</option>
<option value='2'>1</option>
<option value='3'>2</option>
<option value='4'>3</option>
</select> PHP-Code: Die von dir Brabax beschriebene Art kann ich so leider nicht anwenden da bei mir das Formular durch ein komplettes "Array" läuft und ich vorher schon die input Variable zur eigentlichen Hauptvariablen mache, bevor das ganze PHP gedöns anfängt. MfG |
| | |
| | #6 (permalink) | |
| Member of Honour ![]() | Normalerweise sollte $input in diesem Fall kein Array sein! Deswegen auch <select name="input"> (ohne Klammern) und Auslesen via Umwandlung von POST/GET auf PHP (oder wie auch immer du deine Variable PHP-tauglich machst) und dann if($input == WERT). D.h. du hast kein Array mit allen Werten, sondern nur diese Variable mit EINEM der Werte. Erst bei einer möglichen Mehrfachauswahl (was ich bei dir jetzt nicht sehe, korrigier mich bitte, wenn ich falsch liege) kommt ein Array zum Einsatz. Zitat:
lG Brabax
__________________ << Wir leben bereits im morgigen Gestern, doch vom gestrigen Morgen sind wir noch weit entfernt. >> << Träume sind Schäume. Es liegt an dir ob du sie lebst oder ein Schaumschläger bist! >> << Erst wenn man beginnt zu implizieren, wird man merken, dass einem sowieso keiner richtig zuhört. >> | |
| | |
| | #7 (permalink) |
| Themenstarter Registriert seit: 25.05.08 ![]() Likes: 0 | hm :-) jetz bekomm ich zweifel an meinem script :-) Ich poste dir mal ein bisschen vom Code: Formular: Code: <form method='post' action=''>
<fieldset>
<ol>
<li>
<label> Username <em>*</em></label>
<input class="form_feld" id="username" type='text' name='input[username]' value=""/>
</li>
.........
<li>
<input class="button" type="submit" value="Senden" />
<input class="button" type="reset" value="Reset" />
</li> PHP-Code: Und am ende natürlich Code: </ol> </fieldset> </form> Grüße |
| | |
| | #8 (permalink) |
| Member of Honour ![]() | Hhmhm Jetzt verstehe ich zumindest, wie du auf den Array kommst ![]() Alles klar. Es wäre dann aber trotzdem nach deiner Methode _theoretisch_ so: <select name="input[x]"> <option value='1'>-----</option> ... ... bla bla bla hier der ganze andere Code ...if($input[x] == WERT) # WERT = Wert des value-Feldes. Du gibst also in den VALUE-Feldern der <option>-Elemente nur an, welchen Wert die definierte Variable aus <select name="..."> haben kann. Wenn eines der Elemente ausgewählt ist, dann wird nicht "$input['WERT']" angelegt, sondern "$input["x"] = WERT". Teste doch einfach mal folgendes Mini-Ding, dann siehst du, wie es funktioniert: Code: <!-- Seite 1 --> <form name="test" action="seite2.php" method="POST"> <select name="variable"> <option value="1">Wert=1</option> <option value="2">Wert=2</option> </select> <br> <input type="submit"> </form> Code: # Seite 2 echo $_POST['variable']; Ich bin mir aber unsicher ob EIN durchgehendes Array für alle Elemente eines Formulars (nicht nur eines Mehrauswahlfeldes) auch möglich ist. Wenn nicht, dann nimm einfach für jedes <input> Objekt eine eigene Variable (name . Aber deine Lösung, alle Formularelemente in einem Array zu speichern, finde ich nicht verkehrt. Kannst ja mal posten, ob das so funktioniert hat
__________________ << Wir leben bereits im morgigen Gestern, doch vom gestrigen Morgen sind wir noch weit entfernt. >> << Träume sind Schäume. Es liegt an dir ob du sie lebst oder ein Schaumschläger bist! >> << Erst wenn man beginnt zu implizieren, wird man merken, dass einem sowieso keiner richtig zuhört. >> |
| | |
| | #9 (permalink) |
| Themenstarter Registriert seit: 25.05.08 ![]() Likes: 0 | Feine Sache danke dir funktioniert wunderbar jetz, habs folgender maßen gemacht: html: Code:
<select name="input[1]">
<option value='2'>-----</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
</select> PHP-Code: |
| | |
| | #10 (permalink) |
| Member of Honour ![]() | wunderbar
__________________ << Wir leben bereits im morgigen Gestern, doch vom gestrigen Morgen sind wir noch weit entfernt. >> << Träume sind Schäume. Es liegt an dir ob du sie lebst oder ein Schaumschläger bist! >> << Erst wenn man beginnt zu implizieren, wird man merken, dass einem sowieso keiner richtig zuhört. >> |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Buttons wie [B] oder [I] die den BBcode in eine Textarea eintragen | reaLInsanity | (Web-) Design und webbasierte Sprachen | 11 | 11.06.07 08:10 |
| filetypes eintragen zum DL | bikmaek | Linux/UNIX | 4 | 08.12.05 16:27 |
| Automatisch Adresse eintragen.....? | cynus | Internet Allgemein | 6 | 13.03.05 13:37 |
| php und mysql aus mysql db auslesen | chrisi01 | (Web-) Design und webbasierte Sprachen | 1 | 02.11.03 13:28 |