[英]PHP - saving data with foreign key (codeigniter)
我的數據庫中有兩個表, users
和onlineform
。 onlineform
有一個名為userid
的字段,它是users
表id
的外鍵。 當我將數據保存到onlineform
表時,我試圖將登錄的用戶ID保存到userid
字段。 但是,它僅返回此Message: Undefined index: userid
。 令人困惑的是,其他數據可以保存,只有用戶ID不能保存到onlineform
表的userid
字段中。 我正在使用ajax保存我的數據
我的模型, form_model.php
public function save($form_data)
{
for ($i=0; $i < count($form_data); $i++) {
$data[] = array(
'id'=>$form_data[$i]['userid'],
'date'=>$form_data[$i]['date'],
'day'=>$form_data[$i]['day'],
'in1'=>$form_data[$i]['in1'],
'out1'=>$form_data[$i]['out1'],
'in2'=>$form_data[$i]['in2'],
'out2'=>$form_data[$i]['out2'],
);
}
try {
for($i = 0; $i < count($form_data); $i++) {
$this->db->insert('onlineform',$data[$i]);
}
return 'success';
}
catch (Exception $e) {
return 'failed';
}
}
控制器, form.php
public function save()
{
$form_data = $this->input->post('form_table');
$this->load->model('form_model');
$status = $this->form_model->save($form_data);
$this->output->set_content_type('application/json');
echo json_encode(array('status' => 'status'));
}
和我的看法, report.php
$('#savedb').click(function(){
var form_table = [];
$('#form_table tbody tr').each(function(row, tr) {
if ($(tr).find('td:eq(0)').text() == "") {
}
else {
var sub = {
'day' : $(tr).find('td:eq(0)').text(),
'date' : $(tr).find('td:eq(1)').text(),
'in1' : $(tr).find('td:eq(2)').text(),
'out1' : $(tr).find('td:eq(3)').text(),
'in2' : $(tr).find('td:eq(4)').text(),
'out2' : $(tr).find('td:eq(5)').text(),
'id' : $(tr).find('td:eq(6)').text()
};
form_table.push(sub);
}
});
var data = {
'form_table' :form_table
};
$.ajax({
data : data,
type : 'POST',
url : '<?php echo base_url('index.php/Form/save'); ?>',
crossOrigin : false,
dataType : 'json',
success : function(result) {
if(result.status == "success"){
}
else {
}
}
})
});
$form_data[$i]['userid']
應該是$form_data[$i]['id']
如此處定義:
'id' : $(tr).find('td:eq(6)').text()
或將后者更改為: 'userid' : $(tr).find('td:eq(6)').text()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.