我目前有一个表单,然后使用javascript / ajax将信息发布到一个函数中,然后将数据插入到我的数据库中。
此刻它插入通过form.serialise传递的所有内容,我希望它能忽略params oppid& coverletter,因为它们通过不同的代码插入单独的表格中。
我的php for insert如下......
$insert1 = [];
foreach ($this->input->post() as $k => $v) {
$insert1['question_id'] = $k;
$insert1['answer'] = $this->input->post($k, true);
$this->db->insert("applicationquestionanswers", $insert1);
}
我的表单通过此javascript发布
$.ajax({ url: "https://XXXXX.com/apicalls/submitapplication",
method: "POST",
data: $("#applyform").serialize(),
success: function(data) {
$( "#applybtn" ).hide();
$( "#applybtn1" ).show();
目前这些是传递过的值
oppid: 求职信: 1: 2:
表单中包含带有自定义问题的字段,这些文本字段的名称是这些问题的唯一ID,即" 1"是数据库中问题的ID。 ($ k)的
希望这是有道理的,
所以基本上,我想忽略params coverletter和oppid(我的表单上的字段),因为我的代码现在将所有内容都插入到我的表中。
任何想法?
答案 0 :(得分:0)
有几种方法可以做到这一点,一种方法是获取一个帖子变量列表,然后取消设置你不想使用的那些......
$insert1 = [];
$fields = $this->input->post();
// Remove fields not interested in saving
unset ($fields["oppid"]);
unset ($fields["coverletter"]);
foreach ($fields as $k => $v) {
$insert1['question_id'] = $k;
$insert1['answer'] = $this->input->post($k, true);
$this->db->insert("applicationquestionanswers", $insert1);
}