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

Въпрос за сигурност на PHP?

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

Първо, трябва да защитите вашата база данни от атаки с инжектиране. Има проста PHP функция за това:mysql_real_escape_string() обикновено е достатъчно, за да защити вашата база данни от инжектиране при предаване на този низ за съхранение като стойност на полето.

Оттам нататък трябва да внимавате с дисплея си, тъй като потребител, на когото е разрешено да качва HTML код, може да направи гадни неща на други потребители когато този код се покаже. Ако правите статии в обикновен текст, можете просто htmlspecialchars() полученият текст. (също така вероятно ще искате да преобразувате нови редове в
тагове.) Ако използвате решение за форматиране, като например двигателя Markdown, използван на този сайт, тези решения обикновено предоставят HTML дезинфекция като функция на двигателя , но не забравяйте да прочетете документацията и се уверете.

О, уверете се, че проверявате и вашите GET/POST променливи, използвани за изпращане на статиите. Това се разбира от само себе си и извършената проверка ще трябва да бъде съобразена с това, което вашият сайт прави със своята логика.



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

  2. MySQL се поврежда след всяко рестартиране на сървъра

  3. MySQL COUNT() и нулеви стойности

  4. Как да съхраня UTC ISO8601 дата в MySQL база данни?

  5. Не виждам веднага вмъкнатите данни от MySQL