Ik schrijf een bericht naar mijn MySQL-database dmv. een htmlformulier.
Ik maak een multiline textfield aan met een char width van 100 char. Ik zet de WRAP op virtual. Echter als ik mijn bericht met php uitlees krijg ik toch steeds 1 lange zin zonder regeleind. Er verschijnt toch een horizontale schuifbalk. Waar moet ik waar veranderen?
even de functie nl2br() over de text halen die uit de DB komt
Let hierbij vooral op het punt: "die uit de DB" komt. Wat er (te) veel gebeurt is dat er met de nl2br() (= NewLine naar <br>) naar de database wordt geschreven, maar als je dan tekst later wil bewerken gaat het dan mis. Schrijf het weg zoals het uit het tekstveld komt (wel even htmlentities of adslashes eroverheen halen, om SQL-injectie te voorkomen) en doe de aanpassingen aan de tekst zelf pas bij het uitlezen.
[quote='PHP Newbie schreef op 12.10.2006 23:06']even de functie nl2br() over de text halen die uit de DB komt
Let hierbij vooral op het punt: "die uit de DB" komt. Wat er (te) veel gebeurt is dat er met de nl2br() (= NewLine naar <br>) naar de database wordt geschreven, maar als je dan tekst later wil bewerken gaat het dan mis. Schrijf het weg zoals het uit het tekstveld komt (wel even htmlentities of adslashes eroverheen halen, om SQL-injectie te voorkomen) en doe de aanpassingen aan de tekst zelf pas bij het uitlezen.[/quote]Wat ik altijd doe: Ik haal met het invoeren in de db enkel [php]mysql_real_escape_string[/php] over de input veldjes heen.
met uitlezen gebuik ik [php]htmlentities[/php], [php]stripslashes[/php], [php]nl2br[/php] ( indien nodig ) en nog wat zelfgemaakt functies.
Werkt perfect.
Bij de value van een input veldje doe ik het volgende:
[quote='Robert schreef op 12.10.2006 23:18'][quote='PHP Newbie schreef op 12.10.2006 23:06']even de functie nl2br() over de text halen die uit de DB komt
Let hierbij vooral op het punt: "die uit de DB" komt. Wat er (te) veel gebeurt is dat er met de nl2br() (= NewLine naar <br>) naar de database wordt geschreven, maar als je dan tekst later wil bewerken gaat het dan mis. Schrijf het weg zoals het uit het tekstveld komt (wel even htmlentities of adslashes eroverheen halen, om SQL-injectie te voorkomen) en doe de aanpassingen aan de tekst zelf pas bij het uitlezen.[/quote]Wat ik altijd doe: Ik haal met het invoeren in de db enkel [php]mysql_real_escape_string[/php] over de input veldjes heen.
met uitlezen gebuik ik [php]htmlentities[/php], [php]stripslashes[/php], [php]nl2br[/php] ( indien nodig ) en nog wat zelfgemaakt functies.
Werkt perfect.
Bij de value van een input veldje doe ik het volgende: