来自数据库的内容作为html格式的文本区域的默认内容

时间:2009-04-13 23:10:58

标签: php javascript html ajax

我想知道从数据库字段中提取文本的最简单方法,并将其设置为文本区域的默认文本。

我现在计划将字段分配给变量,然后使用javascript将其设置为默认文本,但我不确定如何执行此最后一部分。

3 个答案:

答案 0 :(得分:2)

在您的PHP代码中,可能高于您的HTML:

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

在你的HTML中:

<textarea name="databaseField" rows="5">
   <?php= $databaseField ?>
</textarea>

答案 1 :(得分:1)

如果您使用的是服务器端语言,则无需额外执行javascript步骤。您只需填充“value”属性的值即可。以下是使用PHP的示例:

<input type="text" 
  name="phoneNumber" 
  value="<?php print($phone_number_from_database); ?>" />

答案 2 :(得分:1)

不要忘记转义数据库内容!

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

否则您会遇到包含'foo </textarea>bar baz'等html标签的内容出现问题。 bar baz会逃脱你的文本区!这可能会导致cross site scripting安全问题(如果您允许用户输入)或至少打破html。如果他们忘记清理他们边做边学的留言簿应用程序中的条目,我曾经用javascript打开无数新窗口来惩罚同学们。带有图像的窗户没有理智的人想要看到。美好时光:)

htmlspecialchars将<, >, ", &, ...转换为实体(&lt;, &gt;, &quot;, &amp;, ...),防止内容中断。