Forum » Server-Side scripting » Tekst invoeren
Skydiving!
Berichten: 1399
avatar
Offline Stuur privebericht
Hallo,

Momenteel ben ik bezig met meerdere websites en een eigen CMS die ik in de toekomst wil gaan aanbieden aan klanten.

Alleen ben ik nu bezig met een script waarmee ik tekst ga toevoegen aan de database.
Dat werkt allemaal fantastisch, alleen de "enters" worden niet mee opgeslagen.
Als ik na een regeleinde <br /> toevoeg dan word dit correct weergegeven op de pagina zelf..

Maar dat is natuurlijk onveilig en lastig voor gebruikers.
Hoe kan ik oplossen dat een "enter" goed word opgeslagen?

Alvast bedankt!
06-12-2011 16:43
Dit topic is 153 keer bekeken door 29 verschillende leden
Reacties op: "Tekst invoeren"
1
Leert scripten!
Berichten: 236
avatar
Offline Stuur privébericht
Met een ubb parser werken? Die het bericht uit de database haalt waar je het wil laten zien en dan parst. Je kan daarin dus eventueel ook inzetten dat hij dan die html moet weg werken.
06-12-2011 16:45
Vreemd
Berichten: 1246
avatar
Offline Stuur privébericht
Enters worden wel correct opgeslagen. Als je de broncode gaat bekijken hoor je te zien. Gebruik nl2br() om van een newline ('enter' teken <br /> te maken.
06-12-2011 16:54
Skydiving!
Berichten: 1399
avatar
Offline Stuur privébericht
@Darsstar je bent geweldig! Dankje

Code | Selecteer Alles
minimaliseren
1
2
3
4
<?php
$text 
nl2br($_POST['text']);
echo 
$text;
?>


Hoe zorg ik er nu voor dat als ik de tekst later ga bewerken de <br /> niet worden getoond?
Opslaan werkt goed, tonen ook. Maar als ik het ga bewerken, komen de <br /> weer tevoorschijn.
06-12-2011 17:05
Leert scripten!
Berichten: 236
avatar
Offline Stuur privébericht
van te voren die n12br() er over heen gooien?(is een gok ik werkt alleen met ubb)
06-12-2011 19:32
Vreemd
Berichten: 1246
avatar
Offline Stuur privébericht
Je slaat de onbewerkte input op in de database. Wanneer je deze als HTML wilt weergeven gebruik je pas htmlspecialchars() en nl2br(). Zo kun je het ooit ook nog als bijvoorbeeld JSON aan javascript voeren.

Gebruik functies zoals htmlspecialchars(), mysql_real_escape_string(), nl2br(), strip_tags() en dergelijke pas als ze nodig zijn en niet eerder.

PS. een uitzondering is als je zowel een bewerkte als onbewerkte versie op gaat slaan in je database om niet bij elke request die zelfde bewerkingen te doen.
07-12-2011 00:45
Berichten: 200
avatar
Offline Stuur privébericht
WYSIWYG editor gebruiken :/?
07-12-2011 00:55
Reageer op: "Tekst invoeren"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden