![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 24.12.2003 Skąd: Lubin Ostrzeżenie: (0%) ![]() ![]() |
Na forum nie doszukałem się na razie żadnego rozwiązania tego problemu więc postanowiłem go przedstawić.
Problem jest następujący: jak zrobić, by z wczytywanych z bay dancyh komentarzy usuwane były tagi html. O tym problemie uświadomilem sobie, gdy jeden z moich kolegów wkleił mi w komentarz kod alertu jakiegoś... podobnie mozna wstawić jakiś wielki rysunek rozbijając stronkę. Istnieją więc dwa sposoby rozwiązania tego problemu: 1. Żeby wczytywał komentarze doslownie, tzn. tagi html byly widoczne w przeglądarce i nie byly wykonywane. 2. Usunąć te tagi (ciąg między '<' a '>' z tymi znakami włącznie), ale to skolei może spowodować zamieszanie w przypadku gdy ktoś przez przypadek da jeden z tych znaków. Pierwsze rozwiązanie jest chyba stosowane w witrynach wykorzystujących bbCode (od razu mówię, że ja nie potrzebuję możliwości formatowania tekstu komentarzy), ale nie mam pojecia jak wygląda ta funkcja. Czy może ktoś pomóc? |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 219 Pomógł: 10 Dołączył: 9.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
do tej zmiennej gdzie masz przechowywaną zawartość komentarzy proponuję użyć czegoś takiego:
$tresc = str_replace("&", "&", $tresc); $tresc = str_replace("<", "<", $tresc); $tresc = str_replace(">", ">", $tresc); $tresc = str_replace("\r\n", "<br>", $tresc); |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
Cytat(wolguy @ 2005-07-19 18:16:43) $tresc = str_replace("\r\n", "<br>", $tresc); nl2br" title="Zobacz w manualu PHP" target="_manual |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 17.04.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam...
Mam problem zachaczający o to samo... Również chodzi o dodawanie komentarzy(oraz cmsa). Różnica jest taką, że zależy mi również na zamianie & na & Zastanawiam się co jest lepszym rozwiązaniem... zamiana podczas wczytywania z bazy danych, czy też przy zapisywaniu do bazy. Wydaje się, iż najlepszym rozwiązaniem jest htmlspecialchars lub htmlentities, ale.... gdy sam wpiszę &, to funkcja zamienia mi to na &amp; Proszę o wskazówkę w jaki sposób najlepiej to rozwiązać... |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 560 Pomógł: 0 Dołączył: 15.07.2003 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
ja uzywam htmlspecialchars" title="Zobacz w manualu PHP" target="_manual co do stosowanie to przed zapisem do bazy bo robisz to raz a nie 1000 razy przy kazdym wejsciu na strone (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#7
|
||
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 17.04.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
no ok... też mi się wydaje, że tak lepiej... ale radzisz sobie jakoś z &amp; (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? bo liczenie na to, że w polu textarea nikt nie wpisze(lub ja nie zapomnę) & jest lekko idiotyczne... wydaje się, iż kombinacja html_entity_decode i |
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 22:42 |