Bei SQL UPDATE Zeileninhalt gelöscht

  • Themenstarter Themenstarter Astror Enales
  • Beginndatum Beginndatum
A

Astror Enales

Hallo Forum.

Ich habe ein sehr komisches Problem und bisher nichts helfendes gefunden.
Also ich habe eine sql-tabelle um seiten zu verwalten.
Einmal "dpsg_site" mit folgender Struktur:
id - int(11) mit auto_increment
ordernum - int(11)
title - varchar(100)
text - text
visible - tinyint(1) also bool
state_all - tinyint(1) also bool
state_admin - tinyint(1) also bool
state_woe - tinyint(1) also bool
state_jupi - tinyint(1) also bool
state_pfadi - tinyint(1) also bool
state_rover - tinyint(1) also bool
state_leiter - tinyint(1) also bool

ich update die seite so:

PHP:
$id = $_GET["id"];
  $sitename = $_POST["sitename"];
  $visibility = $_POST["visibility"];
  $ordernum = $_POST["ordernum"];
  $state_all = $_POST["state_all"];
  if($state_all)
    $state_all2 = 1;
  else
    $state_all2 = 0;
  $state_admin = $_POST["state_admin"];
  if($state_admin)
    $state_admin2 = 1;
  else
    $state_admin2 = 0;
  $state_woe = $_POST["state_woe"];
  if($state_woe)
    $state_woe2 = 1;
  else
    $state_woe2 = 0;
  $state_jupi = $_POST["state_jupi"];
  if($state_jupi)
    $state_jupi2 = 1;
  else
    $state_jupi2 = 0;
  $state_pfadi = $_POST["state_pfadi"];
  if($state_pfadi)
    $state_pfadi2 = 1;
  else
    $state_pfadi2 = 0;
  $state_rover = $_POST["state_rover"];
  if($state_rover)
    $state_rover2 = 1;
  else
    $state_rover2 = 0;
  $state_leiter = $_POST["state_leiter"];
  if($state_leiter)
    $state_leiter2 = 1;
  else
    $state_leiter2 = 0;

  $elm1 = $_POST["elm1"];
  $elm1 = str_replace("\\\"", "\"", $elm1);
  
  $sql = mysql_query("UPDATE dpsg_site SET title = '$sitename', text = '$elm1', visible = '$visibility', ordernum = '$ordernum', state_all = '$state_all2', state_admin = '$state_admin2', state_woe = '$state_woe2', state_jupi = '$state_jupi2', state_pfadi = '$state_pfadi2', state_rover = '$state_rover2', state_leiter = '$state_leiter2' WHERE id = $id");

title ist ein einfaches input type text, genau wie ordernum.
visible ist ein select mit option=1 und option=0.
die states sind checkboxes und elm1 ist ein tinymce editor.

wnn ich die seite nun bearbeite und speichere, dann setzt er die komplette zeile mit id=$id auf standard also nichts drinn.

mal gehts mal nicht...woran könnte das liegen
Bin total ratlos, da ich die struktur bis auf die state sachen bisher problemlos im cms hatte.

Vielen Dank im voraus für antworten
 
Is das erste was mir einfällt, wenn ich solche Statements sehe ^^
Obs letztlich tatsächlich das Problem behebt weiß ich nich mit Sicherheit, da es dazu erst ausprobiert werden muss...
Aber nen erster Schritt isses sicherlich.
 
Das hat leider nicht geholfen, da ich sowieso schon
$elm1 = str_replace("\\\"", "\"", $_POST["elm1"]);
drin hatte vor der sql-query.

Jetzt habe ich die ' um die states und die ordernum weggelassen und es geht.
Trotzdem danke für eure bemühungen...
 
Zurück