Hallo ihr,
ausnahmsweise hab ich auch mal ein php-Problem. Ich versuche grad, ein array mit serialize() in die Datenbank zu schreiben. Zuerst fuelle ich das array:
Code:
$post_history[$count]['subject'] = str_replace("\'", "''", str_replace('"', '\\"', (addslashes($row['post_subject'])));
Da serialize die Daten mit einem " begrenzt, muss ich es quoten, und das laut php-Referenz sogar doppelt, da ein quote-Zeichen anscheinend beim Schreiben in die
mySQL-Datenbank draufgeht. Die Daten werden mit einem einfachen serialize() in die Datenbank geschrieben:
Soweit so gut, es steht auch ein \" in der Datenbank. Wenn ich nun aber laengere Daten in die Datenbank schreibe, die auch nicht unbedingt ein " enthalten, so fehlen mir nach dem Auslesen anscheinend 4 Bytes, und deshalb schlaegt dieser Aufruf fehl:
Code:
$post_history = unserialize($postrow['post_history']);
Die Daten werden in ein LONGTEXT-Feld geschrieben, und auch die Verwendung eines BLOB-Feldes hat nichts gebracht.
Hatte jemand schon mal aehnliche Probleme, oder sonst einen Tipp wie ich das Problem loesen kann?
Greetz
alcaeus