![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 0 Dołączył: 11.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Przeglądałem sobie w sieci różne arty na temat php6 i... Dowiedziałem się, że w szóstej wersji PHP znika register_globals - to wydaje mi sie oczywiste, ale pozatym znika też magic_quotes ( i to już w wersji 5.3). W związku z tym mam pytanie: w jaki sposób bezpiecznie kodować tak, aby uniknąć ataków typu SQL Injection i inyych? Czy dane pochodzące z formularzy i trafiające do bazy powinny być przepuszczane przez funkcję mysql_real_escape_string, a następnie przy drukowaniu przez stripslashes()? Czy może są jakieś inne, uniwersalne i niezawodne techniki? ![]() |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Cytat Czy dane pochodzące z formularzy i trafiające do bazy powinny być przepuszczane przez funkcję mysql_real_escape_string, a następnie przy drukowaniu przez stripslashes()? AFAIK stripslashes" title="Zobacz w manualu PHP" target="_manual też zniknie. PS. Jeśli sądzisz, że bez stripslashes" title="Zobacz w manualu PHP" target="_manual dane wyciągnięte z bazy danych będą miały niepotrzebne ukośniki, to nie znasz zasady działania mysql_real_escape_string" title="Zobacz w manualu PHP" target="_manual Cytat W związku z tym mam pytanie: w jaki sposób bezpiecznie kodować tak, aby uniknąć ataków typu SQL Injection PDO będzie na PHP6 domyślnie włączone. Jeśli będziesz korzystał z prepared queries to nie masz się co martwić o SQL Injection. -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 243 Pomógł: 32 Dołączył: 14.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Możesz też użyć PDO i sparametryzować zapytanie - to też jest bezpieczne. Poczytaj o PDOStatement::bindParam.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 00:41 |