Problem mit Ausgabe von Tabellen bei nl2br

Alles, was PHP betrifft, kann hier besprochen werden.

Problem mit Ausgabe von Tabellen bei nl2br

Postby deiszner » 16. April 2004 23:33

Hallo,

ich gebe auf der Startseite einer Homepage aus

<? echo nl2br($row->text); ?>

In der Regel ist dies nur Text in der Datenbank -aber manchmal sind auch Tabellen in den Beiträgen.

Ich schreibe die Tabellen direkt als HTML-Quelltext in die Datenbank.

Dummerweise fügt er mit dem Befehl nl2br immer in der Tabelle einen <br/> ein - dummerweise verschiebt sich die Tabelle damit etwa 3
Bildschirmseiten nach unten - nur mit <? echo $row->text; ?> sieht zwar die Tabelle gut aus, der Text hat aber keine Umbrüche mehr.

Wie löse ich das Problem ?

Danke

Sebastian
deiszner
 
Posts: 129
Joined: 30. December 2002 12:18
Location: Leipzig

Postby HardySim » 19. April 2004 14:47

na du darfst keine zeilenumbrüche bei den tabellen schreiben!

musst die übersichtlichkeit sausen lassen und alles zuammenschreiben, dann macht nl2br auch keine umbrüche
bsp:

<table><tr><td>text (auch mit zumbruch)</td></tr></table>


statt

<table>
<tr>
<td>
[..]
</td>
</tr>
</table>


so müssts dann funzen, just try
[url=http://www.hardysim.de]
Image[/url]
www.party-safari.net
User avatar
HardySim
 
Posts: 325
Joined: 19. June 2003 10:22
Location: Geisenheim

Postby deiszner » 19. April 2004 15:42

Ich hab die Lösung selbst gefunden:


$neutext = preg_replace('/\r\n|\r|\n/', ' ', $row->text);
echo nl2br($neutext);
deiszner
 
Posts: 129
Joined: 30. December 2002 12:18
Location: Leipzig

Postby Wiedmann » 19. April 2004 18:10

Ach so, du willst die Zeilenumbrüche ganz draussen haben? Dann wär ja nl2br() eh die falsche Funktion gewesen. Vor allem nach diesem preg_replace() ist nl2br() ja eh unnötig und kann weggelassen werden (gibt ja nichts mehr zum umwandeln).
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany


Return to PHP

Who is online

Users browsing this forum: No registered users and 9 guests