Home » Php » sql – php echo from database with break lines

sql – php echo from database with break lines

Posted by: admin July 12, 2020 Leave a comment


This is a simple question I believe, but can’t figure it out yet.
I have a text area that after submit goes to a database, and then I echo this text on a page, but here is the problem, say the person writes on the textarea:

Hi Robert,
This is just a test!.

And the message goes to the database just like that, but when I echo that, I get:

Hi Robert, This is just a test!.

This is the form:

<textarea name="newMessage" wrap="hard" cols="30" rows="3"></textarea>

<input type="submit" name="submit" value="Ingresar"> </>

This is the code I use to display the text:

    while($row = mysql_fetch_assoc($messages)){
        echo $row['mensaje']."<br/>";

This is what I use to insert the code:


            $check4LB = $_POST['newMessage'];
            while($letter = mysql_fetch_assoc($check4LB)){
                if($letter=' '){
            } /////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']."\">"; 
How to&Answers:

try echo nl2br($row['mensaje']);


Use nl2br() on the output from the database.


Try this

    while($row = mysql_fetch_assoc($messages)){
     echo str_replace("\r",'<br/>',$row['mensaje']);