Вывод MySQL с разрывами строк в php

У меня есть следующий результат из моей базы данных. Как я могу вывести существующие разрывы строк текста?

while($row = mysql_fetch_array( $result )) {

    // echo out the contents of each row into a table
    echo "<tr>" ;
    echo '<td>' . $row['id'] . '</td>';
    echo '<td>' . $row['kategorie'] . '</td>';
    echo '<td>' . $row['titel'] . '</td>';
    echo '<td>' . $row['betroffen'] . '</td>';
    echo '<td style="width:"600px">' . $row['beschreibung'] .  '</td>';
    echo '<td>' . $row['prioritaet'] . '</td>';
    echo '<td>' . $row['status'] . '</td>';
    echo '<td>' . $row['eingereicht'] . '</td>';
    echo '<td>' . $row['umsetzung'] . '</td>';
    echo '<td style="width:"400px">' . $row['kommentar'] . '</td>';
    echo '<td>' . $row['entwickler'] . '</td>';
    echo '<td><a href="edit.php?id=' . $row['id'] . '">bearbeiten</a></td>';
    echo '<td><a href="delete.php?id=' . $row['id'] . '">löschen</a></td>';
    echo "</tr>"; 
} 

// close table>
echo "</table>";

person user3790450    schedule 09.07.2014    source источник
comment
Он хорошо себя зарекомендовал. Посмотрите на свой HTML-код.   -  person sectus    schedule 09.07.2014
comment
nl2br()?   -  person Darren    schedule 09.07.2014
comment
Как использовать nl2br в моем коде?   -  person user3790450    schedule 09.07.2014
comment
В каком столбце находится новая строка ...?   -  person Darren    schedule 09.07.2014


Ответы (2)


Есть несколько способов сделать это. Один - с str_replace, другой (более распространенный способ) - использовать nl2br.

Для обоих у вас есть 2 варианта их использования. 1.) Вы используете одиночные эхо-выражения, как и в настоящее время. В этом случае вы используете команды для самих значений.

Для использования str_replace (имейте в виду, что здесь вам нужно различать ОС, в которых вы используете код ... некоторые используют \ n некоторые \ n \ r, .....

echo '<td>' . str_replace("\n", "<br>", $row['umsetzung']) . '</td>';

Для полноты картины я также добавлю nl2br (хотя dinesh уже опубликовал это)

echo '<td>' . nl2br($row['umsetzung']) . '</td>';

2.) Вы собираете выходные данные в переменную, а затем повторяете эту переменную (при использовании команд).

$myOutput = ""
$myOutput = $myOutput . "<tr>" ;
$myOutput = $myOutput . '<td>' . $row['id'] . '</td>';
$myOutput = $myOutput . '<td>' . $row['kategorie'] . '</td>';
......
$myOutput = $myOutput . '<td><a href="delete.php?id=' . $row['id'] . '">löschen</a></td>';
$myOutput = $myOutput . "</tr>"; 
echo nl2br($myOutput);

Этот метод также возможен с str_replace вместо nl2br.

person Thomas    schedule 09.07.2014

nl2br($string)

Предположим, вам нужны разрывы строк в заголовке, то есть строка. Вы можете сделать это следующим образом: -

$trs = '';
while($row = mysql_fetch_array( $result )) {
  extract($rows);
  $trs .= "<tr>$id</td>"
  $trs .= "<tr>$kategorie</td>"
  $trs .= "<tr>nl2br($titel)</td>"
}

echo $trs;
person Dinesh Rawat    schedule 09.07.2014