2010-09-18 3 views
1

Я хочу проверить данные, содержащиеся в объектах Value, перед вставкой в ​​базу данных (например, проверьте, что строка php меньше 255 символов перед вставкой в ​​столбец типа varchar(255) или что строка не вставлена в столбце таблицы int(11), дата php имеет правильный формат и т. д.).Проверка данных перед вставкой в ​​базу данных

Есть ли какой-либо каркас или простой способ проверки данных до SQL INSERT или UPDATE операций?

Спасибо!

+0

Есть ли причина, по которой это необходимо сделать в PHP вместо использования функций вашей базы данных, которые могут поддерживать ссылочную целостность, обнаруживать ошибки форматирования и сквоивать, когда есть проблема? – Blrfl

+1

Ну, проблема в том, что вставки БД будут обрезать ввод, если он слишком длинный, и не будет никакого способа сообщить об этом пользователю. Я хочу проверить данные, а затем показать ошибки в представлении, вместо того, чтобы спокойно сохранять обрезанные/возможно поврежденные данные. – Cat

+0

http://stackoverflow.com/questions/3739900/validating-data-before-inserting-into-database – 2012-08-13 05:18:10

ответ

2

Есть ли рамка или простой способ проверки данных до SQL INSERT или UPDATE операций?

php имеет validation встроенный данные filter упаковка. Я бы не советовал вам использовать для этого сложные рамки, потому что это убьет вашу производительность без каких-либо реальных преимуществ.

+0

Это лучшее решение на сегодняшний день. Я понятия не имел, что в PHP есть функции проверки достоверности. Большое спасибо! – Cat

+0

Хе-хе приветствую;). Если это лучшее решение, вы должны принять его;) (Может быть, позже, когда у вас появятся дополнительные ответы?) – Alfred

+0

Теперь интересный вопрос, который возник, - это проверка правильности вложенного массива POST. Так сказать, у меня есть массив, который содержит несколько массивов, я использую filter_input_array рекурсивно или есть более элегантное решение? – Cat