maryaTurova, если вы используете prepared statement то этого достаточно от sql injection. Ибо сама схема работы подготовленных выражений заключается в том что запрос и данные для него идут отдельно друг от друга. и пошутить на тему моего сына зовут "Tommy'; DROP TABLE students;" уже не получится
Ну вы понимаете что вы $rulesCategoryOne получили ассоциативный массив, потом по нему идете в цикле foreach и в результате у вас в $rule лежат значения столбцов из строки в дб?
Дмитрий Сериков, ну он вам вывел только часть ответа. вам стоит посмотреть полностью. но в данный момент если вы удалили все записи - смысла это продолжать нет.
Дмитрий Сериков, это здорово что вы привели мне код этого класса. Однако из него не понятно в какую таблицу лезет этот класс, потому что насколько я могу судить код сохранения хранится в save_action родительского класса. Мне кажется стоит вам посмотреть и найти название таблицы - и потом сделать у нее show create table
Дмитрий Сериков, до тех пор пока вместо того что бы понять что происходит вы будете делать что нибудь рандомное в надежде что это как нибудь поможет - будет такая хрень.
Вы узнали что и в какую таблицу это класс сохраняет?
Наверное стоит посмотреть что собирается сохранить этот класс, в какую таблицу он собирается это делать, после чего посмотреть что творится в этой таблице, и как минимум show create table имя_таблицы привести
lexstile, ну зачем так сложно то? Пишете класс TarifSeeder. В нем проверяете если нет - добавляем, если есть нет. После чего не паримся и просто шарашим командой: