Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapytania mysql?
Forum PHP.pl > Forum > PHP
tumeks
Witam, cały czas prubuej zabezpieczyc i zoptymalizować swój kod, lecz nadal nie wime czy uzywać takiej formy:

  1. <?
  2. mysql_query('UPDATE `postacie` SET `zloto` = `zloto` - '.$koszt.' WHERE `id` ='.$postac_zal.'') or die('Error');
  3. ?>


czy takiej:

  1. <?
  2. mysql_query("UPDATE `postacie` SET `zloto` = `zloto` - '".$koszt."' WHERE `id` ='".$postac_zal."'") or die('Error');
  3. ?>


która jest abrdziej optymalna a która bardziej bezpieczna?

Pozdrawiam
thornag
Optymalna bedzie ta do ktorej zmienne sa dopinane a nie ta w ktorej zmienne sa wewnatrz ". Co to bezpieczenstwa to raczej nie ma zadnej roznicy.
TomASS
1. Co do szybkości, to różnice będą minimalne, lepiej jest poświęcić czas na właściwie rozplanowanie bazy danych i zapytań. Np. u Ciebie pole id niech będzie typu INT, operacje na liczbach są szybsze. Jeśli jest to pole typu INT, to po co używać ' w zapytaniu?
  1. <?php
  2. ...`id` ='.$postac_zal.'...
  3. ?>

lepiej dać coś w stylu:
  1. <?php
  2. ...`id` =$postac_zal...
  3. ?>


2. Co do bezpieczeństwa, to musisz pamiętać o odpowiednim filtrowaniu danych pochodzących od użytkownika, jak to zrobić dowiesz się tutaj oraz tutaj.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.