我使用的是正常的INSERT sql语句,但由于某种原因,当我插入代码时,它以这种方式出现。这里是我的代码:Sql表格未正确格式化
$sql="insert into comments (username, comment) values ('$name','$comment')";
mysqli_query($link, $sql);
我的SQL表:
我使用的是正常的INSERT sql语句,但由于某种原因,当我插入代码时,它以这种方式出现。这里是我的代码:Sql表格未正确格式化
$sql="insert into comments (username, comment) values ('$name','$comment')";
mysqli_query($link, $sql);
我的SQL表:
当有一个字符串控制字符MySQL的输出格式不能很好地工作。它期望字符串中的每个字符在输出中占据一个水平空间,但换行符会转到该行的开头。
您可以显示换行符转义序列有:
SELECT username, REPLACE(comment, '\n', '\\n') AS comment, id
FROM comments;
这也有可能是有回车,其转到当前行的开头,如果输入从Windows来了。您可以用以下代码替换:
SELECT username, REPLACE(REPLACE(comment, '\n', '\\n'), '\r', '\\r') AS comment, id
FROM comments;
您只需使用mysqli_real_escape_string()来转义所有字符。
$sql="insert into comments (username, comment) values ('".mysqli_real_escape_string($name)."','".mysqli_real_escape_string($comment)."')";
mysqli_query($link, $sql);
OR
$name = $mysqli->real_escape_string($name);
$comment = $mysqli->real_escape_string($comment);
$sql="insert into comments (username, comment) values ('$name','$comment')";
mysqli_query($link, $sql);
'$ comment'有回车符在里面。 – Barmar
在MYSQL中的表格格式是相对于你的窗口的大小 – Fallenreaper
什么是回车? @Barmar –