Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Przechowywanie artykułów HTML w bazie.
!*!
post
Post #1





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Korzystam z PDO i bindowania podczas wysyłania zawartości formularza do bazy. Głównie są to całe strony/artykuły które mogą zawierać podstawowe znaczniki jak np. <b><h2><span> itp. i teraz pytanie jak je przechować, wysyłać do bazy? Używać htmlentities, htmlspecialchars i strip_tags($text, '<b><h2><span>'); przy wysyłaniu, aby zmieniał to na encje, a przy odczycie zamieniać je z powrotem na znaczniki?

Jak to rozwiązać przy PDO które z bindowaniem jest odporne na sql injection tak aby było wydajnie, bezpieczne. I jaką wartość powinno mieć pole w bazie przy dużej ilości tekstu? TXT?


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Mephistofeles
post
Post #2





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

Ostrzeżenie: (0%)
-----


Pole typu Text, nie ma sensu zamieniać HTMLa na encje tylko po to, żeby potem go odtwarzać, lepiej by było, gdybyś zrobił jakiś parser bbcode. Zawsze ktoś może przeszmuglować coś mniej podstawowego, dlatego lepiej wyłączyć całkowicie (tu możesz zamienić na encje) HTML i użyć tylko dostępnych tagów bbcode.
Dla bazy nie ma żadnego znaczenia co znajduje się w polu, natomiast jest to istotne dla użytkownika, bo możesz przez HTML np. umożliwić atak typu XSS.
Go to the top of the page
+Quote Post
!*!
post
Post #3





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


NIe użyję bbcode, za dużo z tym roboty, wstawiam tekst przez js execcommands a on zamienia na encje tak jak htmlentities, przez php przepuszczam to przez strip_tags który kasuje wszytkie znaczniki prócz tych trzech... dodatkowo przepuszczę to przez paser aby do znaczników nie było można dodać osobnych właściwości.


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 22:49