![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, jak najlepiej filtrować zmienne które idą POST'em do bazy lub są jednym z kryteriów szukania w bazie ? W tym momencie mam coś takiego
htmlspecialchars(stripslashes(trim($_POST['zmienna'])), ENT_QUOTES); ale nie wiem czy to będzie spełniało swoją rolę i czy lepiej użyć czegoś innego ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Było setki razy. Gorąco polecam przypięty temat.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Toś mi pomógł ... nie ma co ... Nie potrzebuję definicji żadnych tylko odpowiedź czy htmlspecialchars(stripslashes(trim($_POST['zmienna'])), ENT_QUOTES); jest OK czy używać czegoś innego ...
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Tam jest odpowiedź na Twoje pytanie, wystarczy przeczytać wątek, nawet nie cały.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
A skoro Ty to wiesz to nie możesz mi tego napisać ? Bardzo ładnie proszę. bo oglądam ten wątek i nic takiego nie widzę tam
Nikt nie podpowie ? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 706 Pomógł: 108 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Moim zdaniem wrzucanie danych przefiltrowanych htmlspecialchars do bazy to bardzo zły pomysł, bo tracisz informację o oryginalnej strukturze wpisu. (co i tak większość klepaczy kodu - NIE programistów - olewa).
Dla mnie stripslashes + mysql_real_escape_string. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
OK (IMG:style_emoticons/default/wink.gif) Bardzo dziękuję za tą odpowiedź (IMG:style_emoticons/default/wink.gif) O to mi chodziło (IMG:style_emoticons/default/smile.gif)
Takie upewniające się pytanie (IMG:style_emoticons/default/biggrin.gif) Czy to wystarczy przed różnymi nieautoryzowanymi próbami wyciągnięcia czegoś z bazy ? |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 706 Pomógł: 108 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Z mysql_real_ascape_string masz 100% pewności, że nikt nie wyciągnie nic z bazy przez - w Twoim przypadku - dane pole wysłane przez POST. A to dlatego, że cokolwiek wpisze, zostanie wstawione do zapytania jak zwykły tekst.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
OK (IMG:style_emoticons/default/smile.gif) Bo wyczytałem że wykonanie stripslashes po mysql_real_escape_string zwraca string taki jakby bez filtracji (IMG:style_emoticons/default/biggrin.gif) Ale to jak jest stripslashes(mysql_real_escape_string($string))
a tutaj podałeś mysql_real_escape_string(stripslashes($string)) (IMG:style_emoticons/default/wink.gif) A mam jeszcze takie jedno pytanie na przyszłość (IMG:style_emoticons/default/wink.gif) Czy gdy wstawię jakiś edytor wysiwyg i kod który on wygeneruje będę chciał wstawić do bazy to też używać mysql_real_escape_string(stripslashes($string)) czy w takim wypadku czegoś innego ? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 706 Pomógł: 108 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Masz rację -
nie miałoby najmniejszego sensu. To jak dać cukierek, by zaraz go odebrać (IMG:style_emoticons/default/biggrin.gif) Tak, edytory WYSIWYG generują normalne łańcuchy znaków - możesz się nimi posługiwać tak samo. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
OK (IMG:style_emoticons/default/wink.gif) w takim razie jeszcze raz wielkie dzięki (IMG:style_emoticons/default/wink.gif)
Jeszcze jedno pytanie (IMG:style_emoticons/default/wink.gif) Bo jak wpiszę coś w textarea i użyje np. entera do przejścia do nowej linii i jak to potem ładuję na stronę to jest wszystko w jednej linii i muszę użyć nl2br() do tego ... da się jakoś zrobić żeby tego nl2br() nie używać? czy lepiej używać ? (IMG:style_emoticons/default/biggrin.gif) |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 706 Pomógł: 108 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Lepiej używać (IMG:style_emoticons/default/tongue.gif) Co Ci się nie podoba w nl2br? Zawsze możesz wstawić wpis z textarea między znaczniki <pre>, ale to nie najrozsądniejsze rozwiązanie.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 381 Pomógł: 12 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Wszystko mi się w niej podoba (IMG:style_emoticons/default/biggrin.gif) Wszystko jest OK (IMG:style_emoticons/default/wink.gif) THX (IMG:style_emoticons/default/smile.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 08:13 |