Problem mit mysql_real_escape_string()

Drogenfahnder

Well-known member
ID: 167222
L
28 April 2006
333
6
Hallo,
ich habe ein Problem mit mysql_real_escape_string() und zwar wenn ich Daten mit Absätze in die db speicher wird ein Absatz in \r bzw \n umgewandelt. Bearbeite ich den datensatz sieht es zum schlus \\\r\\\ bzw \\\n\\\ aus wieso?

Wie speichert man am besten Umlaute( ä,ö,ü) in der db ab und gibt diese wieder aus?

Grüße
 
Hallo,
ich habe ein Problem mit mysql_real_escape_string() und zwar wenn ich Daten mit Absätze in die db speicher wird ein Absatz in \r bzw \n umgewandelt. Bearbeite ich den datensatz sieht es zum schlus \\\r\\\ bzw \\\n\\\ aus wieso?

https://www.php.net/function.mysql-real-escape-string

Wie speichert man am besten Umlaute( ä,ö,ü) in der db ab und gibt diese wieder aus?

Grüße

kommt ganz darauf an wie/wo du die umlaute ausgeben willst.

aber zum beispiel so:

ö -> ö
etc.: https://de.selfhtml.org/html/referenz/zeichen.htm

hilfreich dazu evtl auch:
https://www.php.net/manual/de/function.htmlentities.php
 
und was ist die beste möglichkeit

htmlentities und dann wieder mit html_entity_decode zurückwandeln für umlate?

und für absätze, gegen fremdcode mit mysql_real_escape_string() einspeichert. Wie kann man diese wieder zurückwandeln?
stripslashes() funktioniert nicht.
 
Vermutlich ist nicht mysql_real_escape_string dein Problem sondern magic_quotes_gpc. Wenn möglich solltest du das ausstellen, und ansonsten eben berücksichtigen (get_magic_quotes_gpc)

Stripslashes funktioniert, nur wenn es doppelt escapt ist wie bei dir, musst du eben auch stripslashes doppelt anwenden.