heute bitte ich euch bei einem Problem um Hilfe, was mich mittlerweile 6 Stunden beschäftigt. Ich binziemlich frustriert und hoffe, dass mir jemand helfen kann.
Ok, es existiert folgende tabelle:
rpgvz_user - id (int) - username (TEXT) - pw (TEXT) - ort (int) - gruppe(int) - mysite (TEXT)
In dieser Tabelle gibt es folgenden Datensatz
1 web189 *einmd5schlüssel* 1 1 *leer*
In die leere Zelle soll nun mittels php ein string geschrieben werden, der von einem WYSIWAYYG editor geschrieben geliefert wurde. Hier einmal der relevante php Code:
Ausder Datenbankklasse:
function connect() { $db = @new mysqli($this->server, $this->user, $this->passwort,$this->datenbank); if (mysqli_connect_errno()) { die ('Konnte keine Verbindung zur Datenbank aufbauen: '.mysqli_connect_error().'('.mysqli_connect_errno().')'); } return $db; } /* Abfrage wird ausgeführt */ function sendQuery($query) { $db = $this->connect(); $result = $db->query($query); if (!$result) { die ('Etwas stimmte mit dem Query nicht: '.$query.$db->error);} return $result; }
Aus der Benutzerklasse:
function setmysite($user,$content) { $dbx = new datenbank(); $sql = 'UPDATE rpgvz_user SET rpgvz_user.mysite = "'.$content.'" WHERE rpgvz_user.id='.$user; //$sql = 'UPDATE rpgvz_user SET rpgvz_user.mysite = "zzt <br />" WHERE rpgvz_user.id=1'; $result = $dbx->sendQuery($sql); }
und zu guter letzt die parameterübergabe:
case 'save': $user->setmysite($_SESSION['id'],$_POST['spaw2'] ); $content = "Dein Profil wurde erfolgreich gespeichert"; break;
Okay, bisher habe ich folgendes Rausgefunden:
- Alle Variablen werden Korrekt übergeben. $_POST['spaw2'] enthält html code
- Die auskommentierte Zeile in der funktioniert ohne Probleme.
- Wenn die Zelle mysite bereits einen Wert besitzt, wird dieser bei ausführen der Anfrage
gelöscht. (was ja in ordnung ist) Danach ist die Zelle allerdings leer, enthält also GAR
NICHTS
- weder sql noch ein php meldet fehler
- auch das filtern der htmlzeichen via htmlspecialchars() hat keinen effekt
- Ich hab mir einmal den $sql ausgeben lassen und den Query per hand ausgeführt - dann funktionierts
Ich bin echt ratlos, wär echt cool, wenn mir jemand helfen könnte...
Vielen Dank im Vorraus,
Mfg
web189
Dieser Beitrag wurde von web189 bearbeitet: 18. Mai 2009 - 18:30