содержимое из базы данных по умолчанию для текстовой области в виде HTML - PullRequest
0 голосов
/ 14 апреля 2009

Я хотел бы знать, как проще всего извлечь текст из поля базы данных и установить его в качестве текста по умолчанию для текстовой области.

В настоящее время я планирую присвоить поле переменной, а затем с помощью javascript установить его в качестве текста по умолчанию, но я не уверен, как сделать эту последнюю часть.

Ответы [ 3 ]

2 голосов
/ 14 апреля 2009

В вашем PHP-коде, вероятно, выше вашего HTML:

// Database connection calls here...
$row = mysql_fetch_array();
$databaseField = $row["databaseField"];

А в вашем HTML:

<textarea name="databaseField" rows="5">
   <?php= $databaseField ?>
</textarea>
1 голос
/ 14 апреля 2009

не забудьте экранировать содержимое вашей базы данных!

<textarea id="foo">
  <?php echo htmlspecialchars($databasefield); ?>
</textarea>

в противном случае у вас возникнут проблемы с контентом, включающим html-теги, такие как 'foo </textarea>bar baz'. bar baz ускользнет от вашей текстовой области! это может привести к межсайтовому скриптингу проблемам безопасности (если вы разрешите ввод данных пользователем) или, по крайней мере, к нарушению html. Раньше я наказывал сокурсников, открывая бесчисленное количество новых окон с помощью javascript, если они забыли очистить записи в своих приложениях гостевой книги для обучения на практике. окна с изображениями никто вменяемый не хочет видеть . хорошие времена:)

htmlspecialchars превращает <, >, ", &, ... в сущности (&lt;, &gt;, &quot;, &amp;, ...), предотвращая освобождение контента.

1 голос
/ 14 апреля 2009

Если вы используете серверный язык, необязательно иметь дополнительный шаг javascript. Вы можете просто заполнить значение атрибута «value». Вот пример использования PHP:

<input type="text" 
  name="phoneNumber" 
  value="<?php print($phone_number_from_database); ?>" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...