[PHP/SQL] Witregel toevoegen?

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
Hoogeveense RAT
Berichten: 8
Lid geworden op: 10 mar 2006, 16:23
Locatie: Hoogeveen, NLD
Contacteer:

[PHP/SQL] Witregel toevoegen?

Bericht door Hoogeveense RAT » 19 apr 2006, 11:10

Ik heb sindskort mijn eigen nieuwssysteem, maar ik heb een probleem. Bij het toevoegen van een nieuwsbericht druk ik twee keer op ENTER om een witregel in te voegen. Wanneer ik het bericht bekijk, dan zie ik dat er geen witregel staat, maar de tekst staat gewoon achter elkaar. Om toch een witregel te maken, moet ik <P> invoeren. Dit vind ik zelf zeer onhandig. Zijn er daarom toch manieren om een witregel toe te voegen aan een nieuwsbericht. Overigens heb ik het probleem ook met een 1x een ENTER (<BR>)

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 19 apr 2006, 11:27

Haal je bericht door nl2br() voordat je het print :)

sub0kelvin
Berichten: 23
Lid geworden op: 22 nov 2005, 23:49
Locatie: Groningen
Contacteer:

Re: [PHP/SQL] Witregel toevoegen?

Bericht door sub0kelvin » 19 apr 2006, 11:28

Hoogeveense RAT schreef:Ik heb sindskort mijn eigen nieuwssysteem, maar ik heb een probleem. Bij het toevoegen van een nieuwsbericht druk ik twee keer op ENTER om een witregel in te voegen. Wanneer ik het bericht bekijk, dan zie ik dat er geen witregel staat, maar de tekst staat gewoon achter elkaar. Om toch een witregel te maken, moet ik <P> invoeren. Dit vind ik zelf zeer onhandig. Zijn er daarom toch manieren om een witregel toe te voegen aan een nieuwsbericht. Overigens heb ik het probleem ook met een 1x een ENTER (<BR>)
Makkelijkste is om gebruik te maken van de nl2br($string) functie van PHP. Een enter in een tekstvak is wordt namelijk een newline teken (vaak aangegeven door \n). De genoemde functie zet deze \n's automatisch om naar een <br>. Nadeel is wel dat je dan onbedoelde enters in je tekstvak ook omzet naar <br>.
Als je specifiek wil dat 2x ENTER overeenkomt met 1 <br>, dan kun je overwegen om een str_replace( "\n\n", "<br>", $string ) te doen als je gaat echoën (of andere volgorde, php.net is even down).


edit: hmm, ik was te traag :P

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 19 apr 2006, 11:40

Nog een kleine correctie: Newlines zijn altijd \n. nl2br zet het om naar <br />(Xhtml valid) en niet naar <br>. De volgorde van je str_replace is goed, php.net is trouwens weer online hier :P

Hoogeveense RAT
Berichten: 8
Lid geworden op: 10 mar 2006, 16:23
Locatie: Hoogeveen, NLD
Contacteer:

Bericht door Hoogeveense RAT » 19 apr 2006, 11:44

@sub0kevin.
Het is de bedoeling dat 1x een <br> maakt en 2x enter een witregel (nieuwe alniea). In elk geval bedankt voor je code :)

@paul, ik zal het proberen :), bedankt.

sub0kelvin
Berichten: 23
Lid geworden op: 22 nov 2005, 23:49
Locatie: Groningen
Contacteer:

Bericht door sub0kelvin » 19 apr 2006, 11:58

paul schreef:Nog een kleine correctie: Newlines zijn altijd \n. nl2br zet het om naar <br />(Xhtml valid) en niet naar <br>. De volgorde van je str_replace is goed, php.net is trouwens weer online hier :P
Je kunt het ook als hexaal of octaal weergeven, wat ook wel wordt gedaan. "\n" is de meest gangbare en de meerste programmeertalen.
Ik weet dat het <br /> is (hoewel, van voor 4.0.5 was het nog <br>), was gewoon lui :P en de hoogeveense RAT noemde ook <br>, anders werd het misschien verwarrend.

Plaats reactie