我相信这是一个简单的问题,但还不能弄清楚。 我有一个文本区域,提交后转到数据库,然后我在页面上回显此文本,但这是问题,比如该人在textarea上写道:
嗨罗伯特,这只是一个考验! 杰森。
然后消息会像这样传递到数据库,但当我回应时,我得到:
嗨罗伯特,这只是一个考验! 杰森。
这是表格:
<textarea name="newMessage" wrap="hard" cols="30" rows="3"></textarea>
<input type="submit" name="submit" value="Ingresar"> </>
这是我用来显示文字的代码:
<?php
while($row = mysql_fetch_assoc($messages)){
echo $row['mensaje']."<br/>";
}
?>
这是我用来插入代码的:
if(isset($_POST['submit'])){
$check4LB = $_POST['newMessage'];
while($letter = mysql_fetch_assoc($check4LB)){
if($letter=' '){
$letter='<br/>';
}
} /////I know this is not write bu is the idea i thgouht at least
$query = mysql_query("SELECT (ifnull(max(idRegistro),0) + 1) as id FROM messages");
$row = mysql_fetch_array($query);
$idMax = $row['id'];
$insertMessage = "INSERT INTO messages(idRegistro, mensaje) VALUES ('".$idMax."','".$letter."')";
mysql_query($insertMessage) or die(mysql_error());
echo "<meta http-equiv=Refresh content=\"0 ; url=".$_SERVER['PHP_SELF']."\">";
}
答案 0 :(得分:13)
尝试echo nl2br($row['mensaje']);
答案 1 :(得分:1)
对数据库的输出使用nl2br()
。
答案 2 :(得分:0)
试试这个
<?php
while($row = mysql_fetch_assoc($messages)){
echo str_replace("\r",'<br/>',$row['mensaje']);
}
?>