Fehler bei SQL-Backup

Please report bugs here!

Moderator: Thorsten

Post Reply
huschi
Posts: 5
Joined: Mon Dec 12, 2005 10:28 pm
Location: Germany
Contact:

Fehler bei SQL-Backup

Post by huschi »

Hallo Leute, hallo Thorsten,

da dies mein erstes Posting hier ist, will ich zuerst einmal ein Lob für dieses absolut brauchbares Programm aussprechen. Ich hab lange nach einem CMS gesucht um mein neues Projekt zu gestallten. Mit phpMyFAQ bin ich (fast) glücklich.

Ok, zum Thema:
Ich nutze in meinen Texten einige Zeichen wie z.B. ' oder \ und sogar Zeilenumbrüche.
Nun hab ich festgestellt, daß beim Backup die SQL-Daten nicht gequoted werden und beim Einspielen pro Zeile geparst wird, so das Zeilenumbrüche zwangsweise zu Fehlern führen.

Meine Lösung:
In ./inc/functions.php die Funktion build_insert 2 Zeilen hinzufügen:

Code: Select all

			if ('rights' != $key && is_numeric($val)) {
				$p2[] = $val;
			} else {
				$val = addslashes($val);
				$val = preg_replace("/\r?\n/", "\\n", $val);
				$p2[] = "'".$val."'";
			}
Ausserdem hab ich noch die INSERT zu REPLACE umbenannt, damit man die Datei auch z.B. mit MySQLadmin einspielen kann. (Könnte man auch mit einem vorgestellten DELETE erreichen.) Zusätzlich hab ich auch noch alle Zeile im Backup mit -- am Anfang ein # davor setzen. In ./admin/backup.import.php müssen dann die substr-Parameter entsprechend angepasst werden.
Dafür wird dann eine einwandfreie SQL-Datei erzeugt.

huschi.
huschi.net - seltene und seltsame Probleme bei der Server-Administration
Thorsten
Posts: 15749
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

in der Version 1.5.5 ist dieses Problem bereits auch gefixt. REPLACE wird von uns nicht genutzt, da das nur mit MySQL funktioniert, unser SQL-Import setzt die DELETEs selber.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
huschi
Posts: 5
Joined: Mon Dec 12, 2005 10:28 pm
Location: Germany
Contact:

Post by huschi »

Hallo Thorsten,

die Idee mit Replace war für mich nur spontan, da ich dann mit einem Doppelklick auf das SQL-File einfach alles in meine lokale Testumgebung einspielen kann.
Spricht denn irgendwas dagegen, die DELETEs auch schon in das SQL mit einzubauen, statt sie nur in der Import-Routine zu schicken?

huschi.
huschi.net - seltene und seltsame Probleme bei der Server-Administration
Thorsten
Posts: 15749
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

da spricht nichts dagegen... könnte man sicher auch mal ändern...

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Post Reply