php mysql存储数据库中文本区域的换行符

nee*_*eko 3 php mysql database format

我有一个输入文本区域,我想存储用户在数据库的文本区域中的换行符,以便它以与输入文本中相同的方式回显输出文本

例如:

Some text some text some text some text


new line some text some text new line 

new line some text new line some text
Run Code Online (Sandbox Code Playgroud)

这是我目前的上传脚本:

$sql = "insert into people (price, contact, category, username, fname, lname, expire, filename) values (:price, :contact, :category, :user_id, :fname, :lname, now() + INTERVAL 1 MONTH, :imagename)";
$q = $conn->prepare($sql) or die("failed!");
$q->bindParam(':price', $price, PDO::PARAM_STR);
$q->bindParam(':contact', $contact, PDO::PARAM_STR);
$q->bindParam(':category', $category, PDO::PARAM_STR);
$q->bindParam(':user_id', $user_id, PDO::PARAM_STR);
$q->bindParam(':fname', $fname, PDO::PARAM_STR);
$q->bindParam(':lname', $lname, PDO::PARAM_STR);
$q->bindParam(':imagename', $imagename, PDO::PARAM_STR);
$q->execute();
Run Code Online (Sandbox Code Playgroud)

Mic*_*ick 25

文本区域中的换行符是换行符,例如\n.它们不是以HTML格式呈现的,因此如果您只是回显输出,它们就不会显示出来.您可以在一个<textarea>或一个<pre>标签内部回显,或者您可以使用它nl2br()来替换带有<br>标签的新行,以便它可以显示为HTML.

  • 那将在*显示*输出的PHP中。也就是说,换行符存储在数据库中,但在显示为 HTML 之前需要解析该数据的显示。`echo nl2br($data);` (2认同)