$query = $this->dbConnection->query("SELECT COUNT(*) FROM $table WHERE $column = \"$what\"");
if ($query === false) {
throw new \Exception('Data not found');
Это двойная ошибка
Во-первых, 'Data not found' - это никакая не ошибка.
В-вторых, ни к какому 'Data not found' возврат false отношения не имеет. false будет только при ошибке
В-третьих, при ошибке нам нужно само сообщение об ошибке, а не невнятное "дата".
И при всем при этом, чтобы получить сообщение об ошибке, никакого кода вообще писать не надо, пхп сам обо всем сообщит, если его правильно настроить
Ну это не развернутый, развернутые я развернуто пишу, когда есть время
я вообще все по мануалу делал, но, видимо, плохо читал.
правильно. потому что мануал это не учебник, а справочник. фичи лучше изучать по статье.
Не знал, что здесь нужно защищаться и от себя самого. Учту!
программа работает не с человеком. А с компьютером.
Человеческий фактор не должен вообще никакой роли играть.
сегодня этой программой пользуется один, который сам данные готовит, а завтра будет пользоваться трое, которые вообще не знают, что было в голове у первого.
Защищаться надо от некорректных данных, а не от "самого себя".
От инъекций надо защищать не только данные но и имена полей и таблиц
метод show - это ужас, летящий на крыльях ночи.
надо срочно читать про нативные методы ПДО, хотя бы здесь phpfaq.ru/pdo
и вообще внимательно прочесть, что там написано
надо наконец разобраться со своими многочисленными функциями ...query
если есть rawQuery, то почему она не используется в delete?
сам класс делает 10 вещей сразу - и соединяется (ну это более-менее ок), и запросы выполняет, и какой-то уродливый квери билдер пытается из себя изобразить
я бы вообще выкинул все методы кроме конструктора и rawQuery
А все остальное делал средствами SQL и PDO.
А для работы с конкретьными таблицами присобачил отдельный Table Gateway, типа такого
$imageList[$row['g_id']][$row['id']] = $row['path'];
не надо его пугать этой строчкой, у бедняги совсем ум за разум зайдет
видно же что в запросе у него WHERE g_id = '" . $row['g_id'] . "' ");
"сделал" он.
не сделал, а собрал из говна и палок
Вы про sql инъекции слышали когда-нибудь?
Кто вас вообще пустил сайты делать?
Зачем сайту регистрация если любой придурок сможет зайти без пароля?
Это двойная ошибка
Во-первых, 'Data not found' - это никакая не ошибка.
В-вторых, ни к какому 'Data not found' возврат false отношения не имеет. false будет только при ошибке
В-третьих, при ошибке нам нужно само сообщение об ошибке, а не невнятное "дата".
И при всем при этом, чтобы получить сообщение об ошибке, никакого кода вообще писать не надо, пхп сам обо всем сообщит, если его правильно настроить