Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php论坛提交时未检测到新行_Php_Mysql_Forms_Newline_Forum - Fatal编程技术网

php论坛提交时未检测到新行

php论坛提交时未检测到新行,php,mysql,forms,newline,forum,Php,Mysql,Forms,Newline,Forum,我正在尝试建立一个非常类似于论坛的功能,用户可以在其中撰写章节或故事(文本的长部分)。然后,该文本将存储在mysql上,以便可以调用、阅读和评论等。这一切都已设置好,工作正常,但当用户键入新行时,无法识别。因此,用户可以键入- 这是第1段 这是第2段 但所显示的只是- 这是第1段这是第2段 我知道有一些字符是html和php,比如或\n,但是使用论坛的人不太了解这一点。有没有办法让它自动工作 下面是我的add_topic.php的代码 <?php session_start(); $una

我正在尝试建立一个非常类似于论坛的功能,用户可以在其中撰写章节或故事(文本的长部分)。然后,该文本将存储在mysql上,以便可以调用、阅读和评论等。这一切都已设置好,工作正常,但当用户键入新行时,无法识别。因此,用户可以键入-

这是第1段

这是第2段

但所显示的只是-

这是第1段这是第2段

我知道有一些字符是html和php,比如或\n,但是使用论坛的人不太了解这一点。有没有办法让它自动工作

下面是我的add_topic.php的代码

<?php
session_start();
$uname = $_SESSION['uname'];



$host="mysql.******************.co.uk"; // Host name 
$username="**********"; // Mysql username 
$password="************"; // Mysql password 
$db_name="************_members"; // Database name 
$tbl_name="forum_question"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// get data that sent from form 
$topic=$_POST['topic'];
$detail=$_POST['detail'];
$name=$_POST['username'];
$datetime=date("d/m/y h:i:s"); //create date time

$sql="INSERT INTO $tbl_name(topic, detail, name, datetime)VALUES('$topic', '$detail', '$name', '$datetime')";
$result=mysql_query($sql);

if($result){
echo "Successful<BR>";
echo "<a href=main_forum.php>View your topic</a>";
}
else {
echo "ERROR";
}
mysql_close();
?>
请再试一次

$detail=htmlentities($_POST['detail']);
在数据库中转换特殊的HTML字符。 希望有帮助


有关更多信息,请转到

在显示前是否尝试过使用
nl2br
?它将把所有
\n
字符转换为html


另请参见文档:

恐怕还是没有运气:(对不起,您还应该使用
$detail=htmlentities(nl2br($\u POST['detail']));
将换行符转换为

。谢谢你的快速回答,但我恐怕不太明白我应该把这个放在代码的什么地方。还有什么提示吗?无论你在哪里使用
echo
来显示文本,你也可以在网上查找教程。使用了一个符咒:D对不起,应该通过显示知道你指的是echo。但是真的很管用:D谢谢
$detail=htmlentities($_POST['detail']);