Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zapis i odczyt kodu HTML do i z bazy
Malinaa
post
Post #1





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Witam,
potrzebuję umożliwić użytkownikom zapis kodu HTML do bazy,
i następnie jego odczyt na stronie.

Jak to zrobić dobrze i bezpiecznie?

Zacząłem tak:

  1. function Zapis($tekst) {
  2. $tekst = mysql_real_escape_string($tekst);
  3. $tekst = htmlspecialchars($tekst, ENT_QUOTES);
  4. $tekst = trim($tekst);
  5. return $tekst;
  6. }
  7.  
  8. function Odczyt($tekst) {
  9. $tekst = stripslashes($tekst);
  10. return $tekst;
  11. }


Zapis chyba mogłby być, ale odczyt?
Jak odczytać zamienione przez htmlspecialchars{} znaczniki
i jak zabezpieczyć się jeśli będzie w kodzie np:
<script type="text/javascript">
// do it
</script>
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Po grzyba dajesz htmlspecialchars skoro chcesz pozwalac na html?
Jak chcesz zabezpieczyc kod przez złym kodem html to zainteresuj się klasą HTMLPurifier
Go to the top of the page
+Quote Post
Mackos
post
Post #3





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


No i może pdo w zapytaniach do bazy (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




A jak to się ma do pytania o html w bazie? Równie dobrze napisz jeszcze byż używał dobrego monitora i podkładki pod mysz

edit: specjalnie dla Malinaa:
ten post jest odpowiedzią na post Mackosa (który notabene jest nad moim postem) o treści:
"No i może pdo w zapytaniach do bazy"
Go to the top of the page
+Quote Post
Malinaa
post
Post #5





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


nie chcę pdo, ale własne funkcje
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




PDO w niczym nie rozwiązuje kwestii HTML w bazie, wiec czy bedziesz mial PDO czy wlasne funkcje to nie ma żadnego wpływu na problem jaki tu zadałes. A odpowiedz dostałeś notabene w pierwszym poście
Go to the top of the page
+Quote Post
Malinaa
post
Post #7





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Cytat(nospor @ 13.10.2011, 11:00:24 ) *
A jak to się ma do pytania o html w bazie?


Albo nie rozumię Twojej odpowiedzi, albo nie rozumiesz mojego pytania.
Coś jest nie jasne w pytaniu?
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@Malinaa weź przeczytaj cały temat od początku do konca. Cytowany przez ciebie tekst nie jest moim pierwszym postem o którym pisałem. Pierwszy post mojego autorstawa jest zaraz za twoim postem rozpoczynającym temat....
Tekst co zacytowałeś odnośił się do bezsensowego posta Mackosa. Nie umiesz rozróżniać postów w wątku?
Powód edycji: [nospor]:
Go to the top of the page
+Quote Post
Mackos
post
Post #9





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


No masz racje, nie czytam ze zrozumieniem ;P i wypisuje głupoty, już się nie odzywam - ide na kawe (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował Mackos 13.10.2011, 10:19:44
Go to the top of the page
+Quote Post
Malinaa
post
Post #10





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


oki, ślepota komputerowa notabene przeoczylem
Go to the top of the page
+Quote Post
nospor
post
Post #11





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nie dość, że ślepy to jeszcze się naśmiewa z mojego notabene.... gdzie ten guzik od warnów.... a tu mam... +100% (IMG:style_emoticons/default/wink.gif)
@mackos, bo obydwaj się na "Ma" zaczynacie to się można pomylić (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Malinaa
post
Post #12





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


so good, give me your hand, więc co z moimi funkcjami?
Go to the top of the page
+Quote Post
nospor
post
Post #13





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Przecież ci napisałem w moim pierwszym poście. Nadal go nie widzisz? Dobrze, zacytuje ci go jeszcze raz...
Cytat
Po grzyba dajesz htmlspecialchars skoro chcesz pozwalac na html?
Jak chcesz zabezpieczyc kod przez złym kodem html to zainteresuj się klasą HTMLPurifier
Go to the top of the page
+Quote Post
Malinaa
post
Post #14





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Nie po grzyba, htmlspecialchars() zamienia nie tylko znaczniki, ale i cudzyslowia, apostrofy itp., których nie chcialbym w bazie.
Chyba dobrze jest kiedy w bazie mamy np. &quot; zamiast " .
Pytanie jest czy dobrze mieć w bazie np: $lt;table$gt; , czy <table>
i jak pozbyć się nie chcianego kodu typu <script>
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Chyba dobrze jest kiedy w bazie mamy np. &quot; zamiast " .
Nie, bo to jest bez sensu. Cudzysłów to cudzysłów i nie ma najmniejszego sensu go zamieniać przed zapisem do bazy na encję :/

Cytat
Pytanie jest czy dobrze mieć w bazie np: $lt;table$gt; , czy <table>
Jak wyżej. W czym ci przeszkadza w bazie zapis <table>? Bo mi w niczym.

Cytat
i jak pozbyć się nie chcianego kodu typu <script>
Przecież ci napisałem raz, potem cytowałem drugi raz!!!!!!!!!
HTMLPurifier
A jesli to rozwiązanie cię nie interesuje to napisz to z łaski swojej to już ci nie bedę 4 liter zawracał.
Go to the top of the page
+Quote Post
Malinaa
post
Post #16





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Ok, zastanawiało mnie &quot; i " , gdzieś widziałem że znak " był zamieniany na &quot; ale zapewne przy odczycie z bazy znaku " i kiedy HTML był zabroniony. I nadal bym nad tym myślał, ale skoro jest to bez sensu, to uratowałeś moje 4 litery (IMG:style_emoticons/default/smile.gif)
Co do HTMLPurifier to jest monstrum, a ja chciałbym funkcyjkę z mini ochroną (przed nie chcianym kodem, js... i może coś tam jeszcze).
Dziękuje za informacje.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 05:26