milkaman: Array auslesen, das in FORM gefüllt wurde.

Beitrag lesen

Hallo liebe Leser,
habe ein Array Problem:

Die Form wird richtig gefüllt. Das Problem ist, dass im folgenden Teil nicht der Wert von  $row->gebietid ausgegeben wird, sondern $row->gebietid selbst, siehe INSERT...:

INSERT INTO tbl_buecher_fachgebiete (buchid, gebietid) VALUES (8515, $row->gebietid)

statt  $row->gebietid  sollte in diesem Beispiel die Zahl 83 angezeigt werden.

Wer kann mir den entscheidenden Tipp geben. Bin schon seit Stunden an dem Thema dran und kämpfe mich durchs Internet und Foren, finde aber nicht die Lösung.
Herzlichen Dank für jede Unterstützung.

Auszug aus dem Quelltext:

<form action="<?PHP echo $PHP_SELF ?>" method="POST">
<table border="0" cellspacing="3" cellpadding="0">
          <tr>
            <td>
              <select name="gebiet[]" multiple size="5">
                <?PHP
           // fachgebiete auflisten
                while($row=mysql_fetch_object($allegebiete))
                {
                echo '<option value="$row->gebietid" ';
                if (isset($sgebiet[$row->gebietid])) echo "selected";
                echo ">";
                echo $row->gebiet;
                echo "</option>";
                }
                ?>
              </select>
            </td>
            <td valign="top"> <b>Mehrere ausw&auml;hlen</b>: <br>
              Strg-Taste w&auml;hrend
              des Ausw&auml;hlens gedr&uuml;ckt halten </td>
          </tr>
        </table>
</form>

// Fachgebiete aendern
$query=mysql_query("DELETE FROM tbl_buecher_fachgebiete WHERE buchid=$buchid") or die ("alte Gebiete loeschen schlug fehl: ".mysql_error());

if(isset ($_POST[gebiet]))
{
 foreach($_POST[gebiet] as $gebietid)
 {
  $xx="INSERT INTO tbl_buecher_fachgebiete (buchid, gebietid) VALUES       ($buchid, $gebietid)";
        echo "$xx<br>";
        $query=mysql_query("INSERT INTO tbl_buecher_fachgebiete (buchid, gebietid) VALUES ($buchid, $gebietid)")
           or die ("neue Gebiete eintragen schlug fehl: ".mysql_error());
  }
}