Sönke Tesch: Radio-Buttons/Auswahlmenü/Checkboxen abfragen

Beitrag lesen

_POST["log_art"]   mail

<br><SELECT name="log_art" class="areas">
      <OPTION value="irc">IRC-Log
      <OPTION value="ingame">InGame-Message
      <OPTION value="mail">E-Mail
      <OPTION value="spio">Spionagebericht

Wie muss ich denn jetzt die abfrage richtig machen, damit die variable in die datenbank übertragen werden kann.

Du hast Variable und Inhalt oben bereits zitiert, d.h. in $_POST[<Elementname>] (hier: $_POST["log_art"]) befindet sich der Wert (value-Attribut) des gewählten <option>-Elements.

Mit $_POST[] verfährst Du wie mit allen anderen Feld-Variablen, zum Beispiel für ein Formularfeld

<input type="text" name="nachname" />

schreibst Du bei MySQL-Nutzung

mysql_query("insert into tabelle set name=".mysql_escape_string($_POST["nachname"]));

Bei Feldern wie <select> oder <input type="radio">, die nur vorgegebene Werte zulassen, kannst Du auf mysql_escape_string() verzichten; es ist allerdings nicht verkehrt, den entsprechenden Wert in $_POST[] mit einer Liste erlaubter Werte abzugleichen:

$erlaubt=Array("gelb","rot","blau");
  ...
  if (! in_array($_POST["farbe"],$erlaubt))
     die("Ungültiger Farbwert");

Wenn Du dann noch prüfst, ob in $_SERVER["HTTP_REFERER"] tatsächlich die Adresse der Formularseite steht und nix anderes, bist Du für alle Eventualitäten gerüstet und keiner kann Dir etwas unterjubeln.

Gruß,
  soenk.e