从MySql检索数据后保留新行?

时间:2014-01-26 16:35:20

标签: php

这是我在SQL数据库中的数据:

enter image description here

但这是我在php中看到的:

enter image description here

如何保留新线? ,我这样得到数据:

  $q= "select * from commands where whether_executed=1 and whether_displayed=0 and from_who='".$user_id."' LIMIT 1" ;

//mysql_set_charset("UTF8");
$ros=mysql_query($q,$link);
if (mysql_num_rows($ros) > 0 ) {

while($row=mysql_fetch_array($ros))
{
    // update command set displayed to 1 so it doesnt appear each time
    $cmdId = $row['id'];
    $q2 = "update commands set whether_displayed=1 where from_who='".$user_id."' and id='".$cmdId."' LIMIT 1";
    mysql_query($q2);

    $response = $row['answer_type'].'!^#^^#^!'.$row['answer'];

    echo json_encode($response);

}
} else {
echo "NULL";
}

3 个答案:

答案 0 :(得分:1)

这是因为当内容类型为html时,您将响应发送到不尊重新行字符(就显示而言)的浏览器。

将您的回复内容类型设置为“text / plain”,新行将显示在浏览器中。

或者您希望页面显示为html,因为您可以在输出之前将\n替换为<br/>

答案 1 :(得分:0)

此行将换行符更改为“\ n”:

echo json_encode($response);

答案 2 :(得分:0)

我注意到你需要在.jpg之后换行,所以这种方法很可能有效。

str_replace ('.jpg' , '.jpg\n' , $ros);

将所有.jpg替换为后面的换行符。