Was heisst denn nun Variable "gesetzt" ?

BeaTBoxX

Erfahrenes Mitglied
Hiho zusammen,

ich hab ein kleines Prob.. sehr klein.. aber ich verstehs nicht.
Ich hab ein Textformular und ein Dropdownmenü im Zusammenspiel.
Es geht dabei um das Thema eines (Gesamt)Eintrags.
Der User hat die Alternativen ein bestehendes Thema aus dem Dropdownmenue zu waehlen (und das Textfeld freizulassen) oder im Textfeld ein neues Thema zu erstellen.

PHP:
           //falls neues thema eingegeben wurde -> zuordnen
           if(isset($_POST['thema']) && $_POST['thema'] != '') {

               $thema_var=$_POST['thema'];
           }
           // sonst: per dropdown ausgewähltes thema zuordnen
           else {
               $thema_var = $_POST['thema_select'];
           }

Nun war es allerdings doch möglich, Einträge mit leerem Thema zu erstellen.
Kann mir jemand sagen wo hier meine Lücke ist, dass sowas ueberhaupt möglich ist?
Was genau bedeutet "isset" ?Ist ein Formularfeld gesetzt ( mit Inhalt '' ) wenn ich es abschicke aber nichts reinschreibe ? Oder wie verhält sich das?

Ich habe übrigens in der DB nachgesehen, die Felder enthalten keine Whitespaces da steht wirklich '' drin. (Whitespaces sollte ich auch noch abfangen.)

Danke!

Gruß
Frank
 
Zuletzt bearbeitet:
Ein Formular ist nicht gesetzt, nur ein Formularfeld.
Nur schnell ein paar Links dazu:
Succesful Controls (Succesful Controls geben bei isset true zurück.)
[phpf]isset[/phpf] liefert false, wenn der Inhalt der Variablen null ist.
Dein Problem ließe sich evtl. mit [phpf]empty[/phpf] lösen. Vielleicht zur zusätzlichen Sicherheit in Verbindung mit [phpf]trim[/phpf].
 
Zurück