phpbar.de logo

Mailinglisten-Archive

[php] MySQL-Problem

[php] MySQL-Problem

=?iso-8859-1?Q?Bj=F6rn_Schotte?= bjoern_(at)_baer.main.de
Sat, 5 Aug 2000 15:04:11 +0200


Hi,

ist Euch schon mal folgendes bei MySQL aufgefallen:
ein String soll in die Datenbank geschrieben werden.
Der String sieht so aus:

   print "<a href=\"bla\">blubb</a>\n";

Damit die Datenbank nicht stolpert, macht man ja
normalerweise von addslashes() Gebrauch. Dann sieht
der String so aus:

   print \"<a href=\\"bla\\">blubb</a>\\n\";

Damit kann er gefahrlos in die Datenbank geschrieben
werden. Okay, machen wir ein INSERT.

Und jetzt habe ich ein Problem. Wenn ich zur Überprüfung
mal im MySQL-Kommandozeilenclient ein SELECT mache und
nachschaue, was denn so in der Datenbank drinsteht, sehe
ich folgendes:

   print \"<a href=\\"bla\\">blubb</a>\n\";
                                      ^^

Da hat MySQL aus dem \\n ein \n gemacht, was nicht sein
darf, denn:

Nachdem die Applikation die Daten ausliest und brav ein
stripslashes() macht, erhält sie folgenden String:

   print "<a href=\"bla\">blubb</a>n";

Und damit ist das Ganze kaputt, weil eigentlich der
gleiche String wie am Anfang rauskommen sollte.

Der verwendete Datentyp in der Datenbank ist übrigens
ein LONGTEXT.

Weiß jemand, wie ich MySQL dazu bringen kann, das \\n
bzw. \\ in Ruhe zu lassen und kein \ daraus zu machen?

TIA, Björn.
-- 
Online-Applikationen für das E-Business: <http://rent-a-phpwizard.de/>

          => inklusive Newsletter rund um PHP & das E-Biz <=


php::bar PHP Wiki   -   Listenarchive