在数据库的echo上显示textarea格式

时间:2012-06-20 07:52:19

标签: php mysql format echo

我创建了一个表单

<form name="form1" method="post">
    <textarea rows="5" cols="20" name="ta1"></textarea>
    <input type="submit" name="submit" />
    <textarea rows="5" cols="20"><?php echo $_POST['ta1']; ?></textarea>
</form>

和PHP代码

<?php
    if ($_POST['submit']) {
        $llo = $_POST['ta1'];
        $con1 = mysql_connect("localhost", "FreeUser", "123456");
        mysql_select_db("database", $con1);
        mysql_query("insert into test (ttta) values ('$llo')");
        $q1 = mysql_query("select * from test");
        $res = mysql_fetch_array($q1);
        echo $res['ttta'];
    }
?>

数据库表测试

id Auto_Increment
ttta mediumtext 500

表格中只有两个字段

现在,当我在textarea中输入格式为

的内容时
Rafee
Web Developer
XYZ Company
New York

当我按下提交按钮时,在数据库表/文本框中存储/显示的具有相同格式结构的相同内容

但是当我echo时,这个值显示为单行,没有任何格式。 我们怎样才能实现这个目标。

我添加了一张图片以便更好地理解

enter image description here

1 个答案:

答案 0 :(得分:8)

使用

echo nl2br($res['ttta']);

这会将\n转换为HTML代码<br />

在HTML中,可见行制动需要使用HTML标记<br />,但在PHP中,存储的数据为"Rafee\nWeb Developer\nXYZ Company\nNew York\n",因此您需要将"\n"转换为"<br />" {{1}}。

参考:http://php.net/manual/en/function.nl2br.php