Gerhard: Schwieriges Problem mit addslashes()

Beitrag lesen

Hallo,

ich habe ein äußerst hinterlistiges Problem:
Um einen String in eine mySQL-Datenbank zu schreiben, schütze ich diesen zuvor mit addslashes(). Sehe ich mir den Inhalt der Datenbank sogleich an, sehe ich, dass die Backslashes erfolgreich hinzugefügt wurden um ersichtlich sind.
Ich habe jetzt bei einem Projekt eine Art Datenbank-Backup mit Hilfe des Dateisystems implementiert. D.h. im Groben, dass ich die Datenbank auslese, in CREATE- und INSERT-Befehle umwandle und diese in einer Datei ablege. Sehe ich mir diese Datei mit einem Wordpad an, stehen hier auch noch korrekterweise die Backslashes an der gewünschten Position dabei.
Will ich diese Datei nun wieder importieren, lösche ich zuerst sämtliche Tabellendefinitionen der Datenbank und führe die in der Datei befindlichen SQL-Anweisungen aus. Jetzt ist da allerdings das Problem aufgetaucht, dass er beim einlesen der Datei in mein PHP-Skript irgendein grausiges Spiel mit meinen Backslashes treibt. Das komische daran ist, dass er sie nicht ganz weglässt, sonst würde bereits dieser Vorgang einen mySQL-Fehler nach sich ziehen. Aber nach dem INSERT sind diese Escape-Backslashes in der Datenbank nicht mehr vorhanden.
D.h. kommt es nun zu einem weiteren Export und wiederum Import, stehe ich vor dem Fehler, dass die Strings nicht mehr mit Backslashes geschützt sind.

Was macht PHP da beim Einlesen von Dateien, dass dieses Phänomen auftritt? Hat irgendwer Ideen wo der Hund begraben sein könnte?

Danke im Voraus

lg Gerhard