Mysql
 sql >> Baza danych >  >> RDS >> Mysql

funkcja oczyszczania danych wejściowych do bazy danych Mysql

htmlentities() nie jest konieczne, aby zapewnić bezpieczeństwo danych dla SQL. Jest używany podczas echa wartości danych na wyjściu HTML, aby uniknąć luk XSS. Jest to również ważny problem bezpieczeństwa, o którym musisz pamiętać, ale nie jest on związany z SQL.

addslashes() jest zbędne z mysql_real_escape_string. Skończysz z dosłownymi odwrotnymi ukośnikami w swoich ciągach w bazie danych.

Nie używaj magicznych cudzysłowów. Ta funkcja jest przestarzała od wielu lat. Nie wdrażaj kodu PHP w środowisku, w którym włączone są magiczne cudzysłowy. Jeśli jest włączony, wyłącz go. Jeśli jest to hostowane środowisko i nie wyłączą magicznych cytatów, zdobądź nowego dostawcę usług hostingowych.

Nie używaj ext/mysql . Nie obsługuje parametrów zapytania, transakcji ani użycia OO.

Aktualizacja:ext/mysql został przestarzały w PHP 5.5.0 (2013-06-20) i usunięty w PHP 7.0.0 (2015-12-03). Naprawdę nie możesz tego użyć.

Użyj PDO i zwiększ bezpieczeństwo swoich zapytań, używając zapytań przygotowanych .

Aby uzyskać więcej informacji na temat pisania bezpiecznego SQL, przeczytaj moją prezentację Mity dotyczące wstrzykiwania SQL i Mity .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Funkcja MySQL do znalezienia liczby dni roboczych między dwiema datami

  2. MySQL JOIN / GROUP_CONCAT druga tabela?

  3. kreator zapytań:klauzula IN z kolumnami złożonymi

  4. zapytanie mysql POKAŻ KOLUMNY Z tabeli, np. 'nazwa_kolumny':pytania

  5. Jak skonfigurować Tomcata do połączenia z MySQL?