Латекс не отображает возврат каретки из запроса MySQL - PullRequest
1 голос
/ 25 января 2012

В текстовой области HTML-формы я допускаю многострочный ввод, такой как:


привет

прощай


Эта строка затем помещается в базу данных mysql с помощью mysql_real_escape_string. Теперь я хочу взять эту строку и передать ее непосредственно в текстовый документ, но пустые строки (перевод каретки, я полагаю) не выводятся вместе со строкой. Следовательно, когда это компилируется с латексом, я получаю вывод


hellornrngoodbye


Что мне нужно сделать с моей строкой, чтобы сохранить возврат каретки?

1 Ответ

2 голосов
/ 25 января 2012

После нашего обсуждения в чате вот что мы выяснили:

Вы использовали

shell_exec("cat ".$PATH."/LatexTemplate.tex | sed -e 's/LatexCode/$latexcode/' > ".$PATH."/TexFiles/Q$id.tex");

внутри скрипта PHP для вставки латексного ввода, хранящегося в БД, в файл шаблона и его сохранения. Где-то в этом процессе, новые строки были сброшены.

Лучшим решением было бы заменить exec оболочки на эквивалентный PHP, который загружает файл в строку, выполняет замену строки входной строкой (неэкранированной) и сохраняет ее в другом файле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...