HTML 表无法识别 mysql 数据库中的换行符


HTML Table not recognising line breaks from mysql database

我有一个带有"地址"字段(VARCHAR)的mysql数据库。我还有一个html表格,用于显示不同工作人员的地址。

我的问题是数据存储在数据库的地址字段中,地址的每一行之间都有换行符,但是当数据显示在表中时,换行符不存在,因此整个地址显示在一行上。我该如何解决这个问题?

我敢肯定这是一个一直在问的问题,但我在任何地方都找不到答案。我是PHP的新手,所以请原谅我的天真。

更新:

这基本上是我的代码:

if(isset($_POST['submit'])) {
$address  = $_POST['address'];
$queryupdate = "UPDATE Staff SET 
      address= :address WHERE id= :id";
$q = $db->prepare($queryupdate);
$q->execute(array(
        ":id"    => $id,
        ":address"  => $address));

$address变量中的数据取自一个简单的文本区域。

除非word-wrap设置为 pre 或使用实际的 pre 标记,否则实际换行符永远不会显示在 HTML 中。但是,要克服这个问题,您可以使用 PHP 中的nl2br()功能。您需要做的是在将数据输出到浏览器之前使用该nl2br(),它将为您提供一个HTML格式的字符串,其中换行符前面加上<br>标记。

在此处查看有关nl2br()的文档:http://php.net/manual/en/function.nl2br.php

使用@Boy的帮助:

我在字符串输出之前添加了"nl2br"。