![](/img/trans.png)
[英]Codeigniter RESTful API - How to get data with post method
[英]CodeIgniter : How to receive serialize post data in array on RESTful Server?
我想問一下,如何從CodeIgniter RESTful Server上的數組序列化數據中接收數據?
阿賈克斯
$.ajax({
type: 'POST',
url: "/mywebsite/api/index.php/purchase",
data: $("#formdatatrans").serialize(),
success: function(response) {
alert("Success");
}
});
HTML表格
<input type="text" name="data1[]">
<input type="text" name="data2[]">
<input type="text" name="data3[]">
<input type="text" name="data4[]">
控制者
function index_post() {
$data = array(
'data1' => $this->post('data1'),
'data2' => $this->post('data2'),
'data3' => $this->post('data3'),
'data4' => $this->post('data4'));
$insert = $this->db->insert('table1', $data);
if ($insert) {
$this->response($data, 200);
} else {
$this->response(array('status' => 'fail', 502));
}}
輸入數據
Array [0]
Data1 = abc_1
Data2 = abc_1
Data3 = abc_1
Data4 = abc_1
Array [1]
Data1 = abc_2
Data2 = abc_2
Data3 = abc_2
Data4 = abc_2
如何使用for / while循環一次添加以上所有數據?
提前致謝
您可以將合並與合並一起使用,可以將兩個數組轉換為一個數組
<?php
$array1 = array('Data1' =>"abc_1",'Data2' =>"abc_1",'Data3' =>"abc_1",'Data4' =>"abc_1");
$array2=array('Data5' =>"abc_2",'Data6' =>"abc_2",'Data7' =>"abc_2",'Data8' =>"abc_2");
$data = array_merge($array1, $array2);
print_r($output);
?>
以此替換您的控制器,並檢查是否可以使用foreach循環將其插入一次。
function index_post() {
$data1 = $this->post('data1');
$data2 = $this->post('data2');
$data3 = $this->post('data3');
$data4 = $this->post('data4');
foreach ($data1 as $key=> $value) {
$data['data1'] = $data1[$key];
$data['data2'] = $data2[$key];
$data['data3'] = $data3[$key];
$data['data4'] = $data4[$key];
$insert = $this->db->insert('table1', $data);
}
if ($insert) {
$this->response($data, 200);
} else {
$this->response(array('status' => 'fail', 502));
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.