2010-05-21 29 views
6

Cách tốt nhất để gửi một bài viết hoàn chỉnh tới một mô hình trong Bộ đánh mã là gì? Các phương pháp tôi biết như sau:Cách gửi POST hoàn chỉnh tới Model trong Mã số Igniter

Phần tử biểu mẫu tên dưới dạng mảng, ví dụ:

<input type="text" name="contact[name]"> 
<input type="text" name="contact[surname]"> 

và sau đó sử dụng:

$this->Model_name->add_contact($this->input->post('contact')); 

Các khác sẽ có thêm từng yếu tố để một mảng và sau đó gửi nó vào mô hình như vậy:

<input type="text" name="name"> 
<input type="text" name="surname"> 

$contact_array = array('name' => $this->input->post('name'), 
         'surname' => $this->input->post('surname')); 
$this->Model_name->add_contact($contact_array); 

Điều nào trong số này sẽ e thực hành tốt nhất, và có cách nào để gửi trực tiếp toàn bộ POST tới một mô hình (hoặc toàn bộ biểu mẫu không?)

Trả lời

5

Chỉ cần chuyển biến $ _POST sang phương thức mà bạn muốn làm việc với tất cả các biến POST. Tôi thấy mối quan tâm của bạn, nhưng hãy yên tâm: $ _POST được vệ sinh bởi chức năng lọc bảo mật bất cứ khi nào bộ điều khiển được khởi tạo.

Vì vậy:

$this->Model_name->add_contact($_POST); 
+1

Ah tuyệt vời! Không biết rằng $ _POST chính nó đã được khử trùng. Cảm ơn! –

+0

Vâng, ở một mức độ nào đó, nhưng để chắc chắn, bạn có thể bật tính năng lọc tự động xss trong config.php bằng cách đặt cấu hình $ [[global_xss_filtering '] = TRUE –

+0

$ config [' global_xss_filtering '] được kích hoạt, nó chỉ không bao giờ xảy ra với tôi rằng nó khử trùng thực tế $ _POST var. –

Các vấn đề liên quan