• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Które rozwiązanie jest lepsze, bezpieczniejsze

0 głosów
238 wizyt
pytanie zadane 5 stycznia 2021 w PHP przez wizarddos Nałogowiec (28,110 p.)
zamknięte 5 stycznia 2021 przez wizarddos

przychodzę dziś do was z pytaniem które rozwiązanie na wykonywanie zapytań w PHP stosować? Które z nich jest bezpieczniejsze pod kątem SQL injection?

Sposób z funkcją query?

$wynik = $polaczenie->query("INSERT INTO tabela VALUES('$val','$val2','$val3'");

Czy polecenia przygotowane?

$query = "INSERT INTO tabela VALUES(?,?,?)";
$polecenie->$polaczenie->prepare($query);
$polecenie->bind_param("iii",$val1,$val2,$val3);
$polecenie->execute();

 

komentarz zamknięcia: Otrzymano odpowiedź

1 odpowiedź

+3 głosów
odpowiedź 5 stycznia 2021 przez Bartek2210 Obywatel (1,310 p.)
wybrane 5 stycznia 2021 przez wizarddos
 
Najlepsza
2 opcja bezpieczniejsza, bo nie będzie możliwa modyfikacja zapytania.

W pierwszym zapytaniu jeżeli w zmiennej $val3 znalazło by się np. dowolnytekst'); DELETE FROM tabela; --

to usunięte zostałyby wszystkie dane z tabeli. Warto też oprócz przygotowania samego zapytania sprawdzać po stronie php czy wstawiane dane są poprawne. Np. jeżeli zmienna powinna być cyfrą to wcześniej sprawdzasz czy rzeczywiście tak jest funkcją is_numeric

Podobne pytania

0 głosów
1 odpowiedź 279 wizyt
pytanie zadane 9 września 2020 w HTML i CSS przez Bartek12 Mądrala (5,510 p.)
+1 głos
1 odpowiedź 498 wizyt
pytanie zadane 13 stycznia 2021 w Sieci komputerowe, internet przez Igorek Mądrala (6,290 p.)
0 głosów
1 odpowiedź 573 wizyt
pytanie zadane 6 lipca 2022 w C i C++ przez Daaa22 Dyskutant (8,250 p.)

93,741 zapytań

142,677 odpowiedzi

323,296 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...