PHP/MySQL | норм защита от sql inj или не

Если проект расчитан на то, что не будет работать с отрицательными числами, то используют заочно абс
________
посл. ред. 12.05.2024 в 21:42; всего 1 раз(а); by _(Ulty)_
________
посл. ред. 12.05.2024 в 21:42; всего 1 раз(а); by _(Ulty)_


Дабы избежать XSS пишут свои функции фильтрации, что бы убирать вредные символы, но многие используют при выводе htmlspecialchars или strip_tags
Фильтрацию чисел так же выполняют по разному:
Регулярными выражениями
https://regex101.com/r/7B3nvn/1
filter_var FILTER_SANITIZE_NUMBER_INT
Кто-то использует abs(intval($number))
А ещё есть смысл почитать статью касаемо CSRF атаки и о способах защиты
Или ну его нахер, кто додумаетс в браузерную игру csfr атаку мутить, это вообще возможно куки украсть без хсс уязвимостей на сайте?:0

function jopa2($str) {
$str = intval($str);
return $str;
}
это реально жопа2.)

trim() в этой всей песне выглядит особенно прекрасно

function jopa($str) {
$str = filter_var(trim($str), FILTER_SANITIZE_STRING);
return $str;
}
норм защита строк от скл иньекций mysql на php 5.6 или неочень, не сильно шарю в безопасности...
еще такйо вариант есть, но хз в чем разница:
function jopa($str) {
$str = mysql_real_escape_string($str);
return $str;
}
//////////////////
для чисел тоже не могу выбрать фичу из двух какая круче:
1)
function jopa2($str) {
$str = filter_var(trim($str), FILTER_SANITIZE_NUMBER_INT);
return $str;
}
или
2)
function jopa2($str) {
$str = intval($str);
return $str;
}
базе данных похер такие очистки в БД всё залетает в виде СТРОК
очищать нужно при выводе в браузер и то на любителя, если не хочешь XSS чтобы балдели на страницах, XSS не выполняется в БД, строка хранится в том же виде
Раньше было как-то проще, просто открываешь код дцмс и смотришь как там всё фильтруется)
https://snipp.ru/php/clear-form
Почитай на досуге. Тут уже готовый класс который можно юзать у себя в проекте
Почитай на досуге. Тут уже готовый класс который можно юзать у себя в проекте
Я использую стандартные фильтры из дцмс

неправильное применение фильтров, ты не проверяешь данные, ты из очищаешь и зачем-то приводишь к другому типу
базе данных похер такие очистки в БД всё залетает в виде СТРОК
очищать нужно при выводе в браузер и то на любителя, если не хочешь XSS чтобы балдели на страницах, XSS не выполняется в БД, строка хранится в том же виде
