Я дал en Entry Form пользователю ввести значения, которые хранятся в таблице MySQL. Существует один столбец «Сведения о проекте», в котором пользователь может ввести до 200 символов, а этот столбец имеет тип «varchar».
До сих пор все в порядке. Проблема начинается, когда детали проекта содержат несколько точек, которые должны быть указаны на странице HTML, как:
(1) ………
(2) ………
(3) ………
Он не уверен, что детали проекта имеют одну строку, один абзац, простой текст или нумерованный список.
Есть ли способ сохранить детали проекта в форматированном текстовом формате в таблице MySQL, а когда PHP показывает страницу моего сайта, текст будет указан в виде вставки в виде вставки?
Если вы хотите сохранить что-то вроде форматированного текста, вы, вероятно, захотите разместить его в поле BLOB: http://dev.mysql.com/doc/refman/5.0/en/blob.html, который не имеет фактического характера присвоенный ему набор
Могу ли я спросить, почему вы хотели бы это сделать? Почему бы не использовать один из многих редакторов большого текста, которые преобразуют вашу информацию в HTML (например, tinyMCE ), который оттуда вы можете сохранить как есть или передать через фильтр Html-> Textile или что-то подобное.
Возможно, вы захотите использовать простой язык разметки, например Markdown или Textile . Они позволяют получать естественный простой текст, а затем визуализировать его как HTML.
В противном случае вы можете просто отобразить текст дословно в тегах <pre>
.
Если вы действительно используете RTF, вам может понадобиться RTF-to-HTML-Converter, быстрый поиск привел это: http://directory.fsf.org/project/rtf2html/ (untested). Это то, что вы имели в виду?
Какой код, который вы храните в базе данных MySQL, зависит от вас, но Varchar, вероятно, не лучший тип поля; вы должны рассмотреть возможность его изменения в текстовое поле.
RTF – это не правильный путь, потому что он не правильно интерпретируется веб-браузерами.
Вы должны использовать некоторый язык разметки, такой как Markdown , тот, который используется здесь.
Я шифрую using base64_encode () и получаю использование base64_decode (). Закладки, пробелы и специальные символы сохраняются.
$statement->execute(array(':cemail' => $c_email, ':ctel' => $c_tel, ':msg' => base64_encode($c_msg))); $msg = $rd['texe;]; $msg = base64_decode($msg)
Отлично работает для меня