wget пишет:
Этот костыль конечно можно использовать, но хочется как-то по человечески, тем более я так понимаю такой проблемы НЕ должно возникать в принципе.
А если другой хост, а там все нормально, кароче не вариант...
Хочется разобраться в чем проблема и как ее решить
Ну, во-первых, это не костыль. Это не предложение в качестве решения твоей проблемы, а просто рациональное рассуждение. Если ты в дальнейшем собираешься выводить информацию в браузер (а не в алерты или в консоль через js), то смысла хранить в базе \r\n нет никакого, т.к. при выводе браузер их проигнорирует, а переноса строки не будет, т.к. он делается тэгом <br />... Если, конечно, ты не планируешь выводить все, оборачивая в <pre></pre>...
wget пишет:
В общем тупик мысли...
А во-вторых, я, собственно, не тупанул, а все правильно тебе сказал. Ты попробуй не долбиться апстену, а воспарить над проблемой
![Улыбка Улыбка](./im/emoticons/smile24.gif)
Смотри, у тебя есть строка:
Строка 1\r\nСтрока 2
Ты ее выводишь в браузер через <pre> и получаешь:
Строка 1
Строка 2
Все верно. В тэге <pre> браузер воспринимает \r\n как полагается и делает перенос строки. Что ты делаешь дальше? Эскейпируешь \r\n и получаешь \\r\\n. Соответственно, в теге <pre>, выводя результат, получаешь:
Строка 1\r\nСтрока 2
Потому что вот это \\r браузер воспринимает как заэскейпированный слэш+буковка r
![Улыбка Улыбка](./im/emoticons/smile24.gif)
Так и выводит. Прям, как попросили. То же самое с \\n...
И в базу у тебя пишется то же самое. И выводится, соответственно. Ты просто от real_escape_string хочешь добиться чего-то прямо противоположного тому, что она должна делать
![Улыбка Улыбка](./im/emoticons/smile24.gif)
Ты возьми и запиши в базу просто как есть, без эскейпирования. И удивишься, потому что твоя проблема неожиданным образом решится