Ändern von Datenbankeinträgen mit einem Formular

molotroc

Mitglied
Hallo,
probiere schon seit Stunden ein kleines Formular zu machen, das den Inhalt einer Tabellen-Zeile (ID, header, location und artikel) anzeigt. Wenn nun auf "Änderung speichern" gedrückt wird, sollen die Veränderungen gespeichert werden. Nur klappt das updaten überhaupt nicht. Passiert einfach nix.

Hier ist der Code (Formular):
PHP:
...
<?php
include("config.php");
$dbanfrage = "SELECT * from $tabelle LIMIT 0,5";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);
?>

<form action="update.php" method="post"> 
<TABLE>
    <TR> 
      <TD> Überschrift: <INPUT TYPE="text" NAME="id" VALUE="<? echo mysql_result($result,0,"id"); ?>" SIZE="1" MAXLENGTH="20">
      <TD> Überschrift: <INPUT TYPE="text" NAME="header" VALUE="<? echo mysql_result($result,0,"header"); ?>" SIZE="20" MAXLENGTH="20">
      <TD> Überschrift: <INPUT TYPE="text" NAME="location" VALUE="<? echo mysql_result($result,0,"location"); ?>" SIZE="20" MAXLENGTH="20">
      <TD> Überschrift: <INPUT TYPE="text" NAME="artikel" VALUE="<? echo mysql_result($result,0,"artikel"); ?>" SIZE="20" MAXLENGTH="20"></TD>
    </TR>
 </TABLE>
<INPUT TYPE="submit" VALUE="Änderung Abspeichern">
</FORM>
<?php
mysql_close ($dbverbindung)
?>
...

Hier nun die Datei update.php - die für mich das größte Problem darstellt. In dieser Datei lasse ich auch mit echo einige Variablen ausgeben um die richtige Übergabe der Daten durch das Formular überprüfe:
PHP:
<?php 
include("config.php");
mysql_select_db("wiesollek");
echo "$id";
echo "$header"; 
echo "$location"; 
echo "$artikel"; 
mysql_query("UPDATE wiesollek set header=".$_POST['header']."', location='".$_POST['location']."', artikel='".$_POST['artikel']."' WHERE id='$id'"); 
mysql_close(); 
?>

Weiss absolut nicht mehr weiter. Habe hier schon im Forum rumgeschaut und verschiedene Sachen ausprobiert. Vielleicht weiss einer von euch Rat.

Gruss
molotroc
 
Hm... Du musst doch in der update.php alle übergebenen Parameter aus dem POST[ ] Array auslesen,oder?
Also nicht
echo "$header";
sondern
echo $_POST["header"];

Vielleicht liegts daran, obwohl du dass ja bei dem MySQL Query so machst, bis auf den ID Parameter...
 
Hallo,

wenn ich echo $_POST["header"]; auslesen lasse, kommt einfach nix.
Nur wenn ich echo "$header"; schreibe liest der es richtig aus.
Aber das soll ja nur zur Kontrolle sein. Das Ändern der Datenbank geht trotzdem nicht :-(

Gruss
molotroc
 
Zurück