У меня возникли проблемы с сохранением точного вида того, как пользователь вводит короткий абзац.Сохранять и отображать текст точно, как он напечатан и отправлен
Моя проблема, что случайные косые черты и html появляются. Когда люди нажимают клавишу ввода при вводе сообщения, «\ r \ n \» будет отображаться, когда он будет эхом позже. Я попытался это исправить, но теперь, когда пользователь вводит апостроф при составлении сообщения, он вставляется в базу данных с тремя обратными косыми чертами и, таким образом, эхом повторяет с помощью трех обратных косых черт с апострофом. Срыв! Я хочу просто начать все заново!
Вот что я делаю.
- Пользователь вводит сообщение в поле ввода и передает отправляет.
- Это сообщение вставляется в базу данных с типом varchar (280) через php.
- Это сообщение получает эхо через php.
Я пробовал много разных вещей, как nlbr
и strip_tags
и stripslashes
и mysql_real_escape_string
и другие. Возможно, я использую все это в определенной комбинации, которая его испортит.
Так что мой вопрос: Каков наилучший способ сохранить то, как кто-то составляет текстовый абзац, который позже будет отображаться через php, чтобы выглядеть так же, как они набрали его?
Как должен выглядеть текст в базе данных? У меня есть слэш с каждым апострофом, и я не знаю, если это ожидается. Я следовал вашим рекомендациям. Я убеждаюсь, что магические кавычки отключены, и я использую подготовленные заявления. Просто любопытно, как это должно выглядеть. Например: «Это не сработало». отображается в базе данных как «Это не работало». – Tom
Текст в базе данных должен выглядеть точно так, как должен выглядеть. Ничего лишнего там не должно быть. – deceze
Все еще не работает. Все, что я делаю, это подготовленный шаг заявления, и он все еще вставляет слэши.Должен ли я избегать отключения волшебных котировок во время выполнения, поскольку он устарел? – Tom