CodeIgniter v2.1.2форма проверки на CodeIgniter Корзина страницы
У меня есть очень простой CodeIgniter покупок установки телега страницы как на the CodeIgniter documentation.
Эта страница Корзины показывает, однако многие продукты в корзине и input
элементов для редактирования количества каждого есть name
атрибутов распределен следующим образом: 1[qty]
, 2[qty]
, 3[qty]
, 4[qty]
, 5[qty]
и т.д.
<input name="1[qty]" type="text" ...
<input name="2[qty]" type="text" ...
<input name="3[qty]" type="text" ...
<input name="4[qty]" type="text" ...
<input name="5[qty]" type="text" ...
....
Это схема в соответствии с документацией CodeIgniter, и, похоже, она работает хорошо, потому что массив POST автоматически находится в правильном формате, чтобы легко обновлять корзину.
$this->cart->update($this->input->post());
кажется, что cart->update()
будет игнорировать любые недопустимый ввод. Другими словами, тележка обновляется только тогда, когда количество представляет собой числовые значения. Однако, я думаю, мне нужно применить проверку формы CodeIgniter на странице корзины. Может быть, мне это не нужно, и я тоже заинтересован в ваших мыслях.
В моем контроллере, где я обычно набор правил по имени поля с помощью set_rules
, я понятия не имею, что происходит в параметре поля name
, когда у меня есть неизвестное число полей.
documentation says I can declare validation on arrays, но я не могу получить следующий код для работы для меня. Я пробовал [qty]
, [][qty]
и некоторые другие. Не работая, я имею в виду, что в полях количества на странице Cart нет ошибок проверки, когда они содержат недопустимые данные, и они всегда проходят проверку и попадают в функцию update()
.
$this->load->library('form_validation');
$this->form_validation->set_rules('[][qty]', 'Quantity', 'numeric|strip_tags|xss_clean');
if ($this->form_validation->run() === TRUE) // passed validation -> submission
{
// update the cart
$this->cart->update($this->input->post());
....
}
else
{
// display validation errors
....
}
Как я могу применить проверку на странице корзины, когда количество полей является динамическим и именование, как описано выше?
Нужна ли мне проверка количества полей? Данные корзины временно сохраняются в сеансе, а когда они передаются в функцию
cart->update()
, недопустимые данные, как представляется, удаляются автоматически.