tomtomtom: Datum in Tabelle umkonvertieren

Beitrag lesen

Hallo,

entweder ich habe Tomaten auf den Augen oder ich bin eines Irrtums aufgesessen.

Ich habe eine MySQL Tabelle mit rund 550 Einträgen, bei denen ich das Datum um 4 Jahre zurückdatieren möchte - und zwar nur das Jahr.

Also gehe ich hin und SELECTe alle Einträge der Tabelle und mit einer normalen while-schleife lasse ich mir jeweils einen record holen, extrahiere das Datum, zerlege es in 3 Bestandteile und subtrahiere dann vom Jahr (in diesem Fall $datum_array[0] den Wert 4 und schreibe es mit der entsprechenden ID zurück in die Tabelle. Aber es klappt nicht.

Alle Datumsangaben sind im US Format abgelegt in der Tabelle (also z.b. 2004-10-22). Ich habe keine PHP Fehler und auch keine MySQL Errors bis ich die finale Zeile $result = mysql_query($sqlneu); "scharf" stelle.

Dann bekomme ich durch die Bank sowas: "Fehler im mySQL?: 1064: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''hp_news' SET datum='1999-06-16' WHERE id='112'' at line 1"

Im Prinzip ist das ja einfach:

$sql = mysql_query("SELECT * FROM news");
 while($sqlrow = mysql_fetch_array($sql)) {
  $datum=$sqlrow["datum"];
  $datum_array=split("-",$sqlrow["datum"]);
  $datum_array[0]=$datum_array[0]-4;
     $newdate=$datum_array[0]."-".$datum_array[1]."-".$datum_array[2];
  $id=$sqlrow["id"];
  $sqlneu="UPDATE 'hp_news' SET datum='$newdate' WHERE id='$id'";
  echo $sqlneu."<br>";
  $result = mysql_query($sqlneu);
  echo $id." ".$datum." > ".$newdate."<br>";
 }

Sieht jemand von euch den Fehler? Ich hab echt alles ausprobiert.

Danke
Gruss tomtomtom