Mysql
 sql >> база данни >  >> RDS >> Mysql

функция за дезинфекция на входа в базата данни Mysql

htmlentities() не е необходимо, за да направи данните безопасни за SQL. Използва се при отразяване на стойности на данни в HTML изход, за да се избегнат XSS уязвимости. Това също е важен проблем със сигурността, за който трябва да имате предвид, но не е свързан със SQL.

addslashes() е излишен с mysql_real_escape_string. Ще се окажете с буквални обратни наклонени черти във вашите низове в базата данни.

Не използвайте магически цитати. Тази функция е остаряла от много години. Не разгръщайте PHP код в среда, в която са активирани магическите кавички. Ако е активиран, изключете го. Ако това е хоствана среда и те няма да изключат магическите цитати, вземете нов хостинг доставчик.

Не използвайте ext/mysql . Той не поддържа параметри на заявка, транзакции или използване на OO.

Актуализация:ext/mysql беше остарял в PHP 5.5.0 (20.06.2013) и премахнат в PHP 7.0.0 (2015-12-03). Наистина не можете да го използвате.

Използвайте PDO , и направете заявките си по-безопасни, като използвате подготвени заявки .

За повече подробности относно писането на безопасен SQL прочетете моята презентация Митове за инжектиране на SQL и Заблуди .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Преобразувайте съхранен md5 низ в десетична стойност в MySQL

  2. Импортирайте голям MySQL .sql файл в Windows със сила

  3. MySQL DATEDIFF() срещу TIMEDIFF():Каква е разликата?

  4. MYSQL заявка за избор на резултат от условие на една таблица и показване на друга таблица

  5. MYSQL Преобразува времевата марка в месец