Ändern von Daten in DB mit PHP geht nicht

Hallo,
und ein erneutes Problem, wo ich keine allgemeingültige Hilfe gefunden habe und alles andere versagte:

Mit einem Formular soll der Wert in der DB geändert werden. Geht aber irgendwie nicht.

Formular (Die Daten aus der DB holen, um die Dropdowns zu füllen geht prima):
PHP:
<form name="input" method="post" action="bezirk_work.php">
  <font face="Arial, Helvetica, sans-serif">Politiker: 
  <?php
$result=mysql_query('select politiker from politiker');
echo "<select name='politiker'>";
while (list($politiker)=mysql_fetch_row($result)) 
{
echo "<option value='$politiker' selected>$politiker</option>";
}
echo "</select>";
?>
  <label for="bezirk"> Neuer Bezirk:</label> 
  <?php
$result=mysql_query('select bezirk from bezirk');
echo "<select name='bezirk_neu'>";
while (list($bezirk)=mysql_fetch_row($result)) 
{
echo "<option value='$bezirk' selected>$bezirk</option>";
}
echo "</select>";
?>
  <br />
  <input type="submit" value="Senden" name="submit" />
  </font> 
</form>


Und das skript der bezirk_work.php:
PHP:
$politiker= $_POST['politiker'];  
$bezirk_neu= $_POST['bezirk_neu'];


$verbindung = mysql_connect ("localhost", "...", "...")
or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch");

mysql_select_db("pop")
or die ("Die Datenbank existiert nicht.");
?>

 <?php
$aendern = "UPDATE politiker SET
bezirk = $bezirk_neu
WHERE politiker = $politiker";
$update = mysql_query($aendern);;
?>

  <?php
if($eintragen == true)
   {
   echo "Eintrag war erfolgreich";
   }
else
   {
   echo "Fehler beim Speichern";
   }
?>

Ergebnis: "Fehler beim Speichern".

Wo liegt der Hund begraben?

Danke schonmal im Voraus.
Digitalspecht
 
So, muss das Thema nochmal aufreißen.
Irgendwie klappt es doch nicht. Muss wohl eine spontane Mutation der DB-Werte gewesen sein, was ich da gesehen habe...

Ich sitze jetzt schon wieder zwei Tage dran und bekomme es nicht hin.
Habe das doppelte ";" entfernt und aus "$eintragen" wurde "$aendern".

Er sagt jetzt, dass das Eintrag erfolgreich war, aber geändert hat sich nichts in der Tabelle... Der Bezirk ist immer noch derselbe...

So, ich poste jetzt nochmal den aktuellen Quelltext... Vielleicht fällt ja jemanden irgendwas auf:

Formular:
PHP:
<form name="input" method="post" action="bezirk_work.php"> 
  <font face="Arial, Helvetica, sans-serif">Politiker:  
  <?php 
$result=mysql_query('select politiker from politiker'); 
echo "<select name='politiker'>"; 
while (list($politiker)=mysql_fetch_row($result))  
{ 
echo "<option value='$politiker' selected>$politiker</option>"; 
} 
echo "</select>"; 
?> 
  <label for="bezirk"> Neuer Bezirk:</label>  
  <?php 
$result=mysql_query('select bezirk from bezirk'); 
echo "<select name='bezirk_neu'>"; 
while (list($bezirk)=mysql_fetch_row($result))  
{ 
echo "<option value='$bezirk' selected>$bezirk</option>"; 
} 
echo "</select>"; 
?> 
  <br /> 
  <input type="submit" value="Senden" name="submit" /> 
  </font>  
</form>


Und hier die bezirk_work.php:
PHP:
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
</head>
<body bgcolor="#FFFFCC">
<p><font size="2">... Siedle Politiker um ...</font> 
  <?php

$politiker= $_POST['politiker'];  
$bezirk_neu= $_POST['bezirk_neu'];


$verbindung = mysql_connect ("localhost",
"...", "...")
or die ("keine Verbindung möglich.
 Benutzername oder Passwort sind falsch");

mysql_select_db("pop")
or die ("Die Datenbank existiert nicht.");
?>

 <?php
$aendern = "UPDATE politiker SET
bezirk = $bezirk_neu
WHERE politiker = $politiker";
$update = mysql_query($aendern);
?>

  <?php
if($aendern == true)
   {
   echo "Eintrag war erfolgreich";
   }
else
   {
   echo "Fehler beim Speichern";
   }
?>

Ergebnis: "Eintrag war erfolgreich", aber es ändert sich nichts in der DB.

Verzweifel jetzt....
 
Und noch immer falsch
if($aendern == true)
und
$update = mysql_query($aendern);

Außerdem solltest du mit or die(mysql_error()); Debuggen
Also so:
PHP:
$update = mysql_query($aendern) or die(mysql_error());
if($update == true)

Aber ich denke das Problem wird sein, dass wenn man in einer Query Variablen benutz man sie am besten in ' schreibt.
So müsste die Query gehen
PHP:
$aendern = "UPDATE politiker SET
bezirk = '".$bezirk_neu."'
WHERE politiker = '".$politiker."'";
 
Zuletzt bearbeitet:
Danke, jetzt geht es wirklich. Das mit der Fehlermeldung bekommen ist ja echt sinnvoll. Und ich werde mir das mit den ' nochmal reinziehn... Scheint ja echt wichtig zu sein.

Danke jedenfalls und nun endgültig abgeschlossen... hoffentlich ;-)
 
Zurück