Skip to content

Instantly share code, notes, and snippets.

@evan4
Created April 26, 2022 11:26
Show Gist options
  • Save evan4/385b75c5fdf63df320918b1457ac9c0e to your computer and use it in GitHub Desktop.
Save evan4/385b75c5fdf63df320918b1457ac9c0e to your computer and use it in GitHub Desktop.
Manager file mistakes
Manager
1) строка 7
Именовать константы нужно в верхнем регистре
2) строка 16
Имя переменной $ageFrom в методе getUsers совпадает с именем аргумента данного метода
Нет проверки равенства аргумента 0 или отрицательному числу
3) строка 28
Нет проверки на isset и !empty массива $_GET['names']
Нет проверки что это массив, а не строка
4) строка 29
Нет экранирования данных, полученных от пользователя. Это теоритически может вызвать sql injection
5) строка 40
Неплохо было бы указать тип аргумента $users как массив
6) строка 46
Нет экранирования значений из массива и приведение их к нужному типу как к числу $user['age']. Это нужно выполнить строкой выше, заранее т.е $userAge = (int)$user['age'] т др переменных
7) строка 47
Необходимо вызвать
\Gateway\User::getInstance()->lastInsertId(); до вызова
\Gateway\User::getInstance()->commit();
8) строка 50
Нужно залогировать ошибку, чтобы позже понять ее характер
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment