Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在同一视图页上进行插入和更新?_Php_Codeigniter_Insert - Fatal编程技术网

Php 如何在同一视图页上进行插入和更新?

Php 如何在同一视图页上进行插入和更新?,php,codeigniter,insert,Php,Codeigniter,Insert,我的问题是,当我分别执行插入和更新操作时,插入和更新工作正常。但是,当我在“更新”按钮面前执行插入操作时,我得到的是空值。我如何在同一个视图页上执行插入和更新操作。。 插入的控制器代码: public function insert($id='') { $session_data = $this->session->userdata('logged_in'); $data['username'] = $session_data['username']

我的问题是,当我分别执行插入和更新操作时,插入和更新工作正常。但是,当我在“更新”按钮面前执行插入操作时,我得到的是空值。我如何在同一个视图页上执行插入和更新操作。。 插入的控制器代码:

 public function insert($id='')
{
        $session_data = $this->session->userdata('logged_in');
        $data['username'] = $session_data['username'];

            $dc=$this->input->post('dc');
            if($dc=='c'){
            $amount=$this->input->post('credit1');
                        } 
            else if ($dc=='d') {
            $amount=$this->input->post('debit');
                                }

$data=array(
      'date' =>$this->input->post('TDate'),
      'code' =>$this->input->post('TName'),
      'project' =>$this->input->post('TName1'),
      'part' =>$this->input->post('part1'),
      'part1' =>$this->input->post('part2'),
      'dc'=>$this->input->post('dc'),
      'amount'=>$amount,
   );

$this->db->insert('daybook',$data);
 $this->session->set_flashdata('Add', 'Inserted Successfully');
 redirect('BookKeeping/daybook','refresh');
}
要更新的控制器代码:

public function update($id='')
{

      $session_data = $this->session->userdata('logged_in');
        $data['username'] = $session_data['username'];

        $id=$this->input->post('id');
        echo "<pre>";var_dump($id);
            $dc=$this->input->post('dc');
            if($dc=='c'){
            $amount=$this->input->post('credit1');
                        } 
            else if ($dc=='d') {
            $amount=$this->input->post('debit');
                                }

$data=array(
      'date' =>$this->input->post('TDate'),
      'code' =>$this->input->post('TName'),
      'project' =>$this->input->post('TName1'),
      'part' =>$this->input->post('part1'),
      'part1' =>$this->input->post('part2'),
      'dc'=>$this->input->post('dc'),
      'amount'=>$amount,
   );
$this->db->where('recno', $_POST['id']);
$this->db->update('daybook', $data);
$this->session->set_flashdata('Add1', 'Updated Successfully'); 
redirect('BookKeeping/daybook','refresh');
}
公共函数更新($id='')
{
$session_data=$this->session->userdata('logged_in');
$data['username']=$session_data['username'];
$id=$this->input->post('id');
echo”“;变量转储($id);
$dc=$this->input->post('dc');
如果($dc='c'){
$amount=$this->input->post('credit1');
} 
如果($dc='d'),则为else{
$amount=$this->input->post('debit');
}
$data=数组(
'date'=>this->input->post('TDate'),
'code'=>this->input->post('TName'),
“项目”=>$this->input->post('TName1'),
'part'=>this->input->post('part1'),
'part1'=>this->input->post('part2'),
'dc'=>this->input->post('dc'),
“金额”=>美元金额,
);
$this->db->where('recno',$_POST['id']);
$this->db->update('daybook',$data);
$this->session->set_flashdata('Add1','Updated Successfully');
重定向(“簿记/日记簿”,“刷新”);
}
插入和更新的查看页面:

  $this->db->insert('daybook',$data);
  $this->session->set_flashdata('Add', 'Inserted Successfully');
  redirect('BookKeeping/daybook/'.$last_insert_id,'refresh');

您可以通过('bookoving/daybook.$last\u insert\u id')传递上次插入id重定向

插入查询:

$this->db->where('recno', $_POST['id']);
$this->db->update('daybook', $data);
$this->session->set_flashdata('Add1', 'Updated Successfully'); 
redirect('BookKeeping/daybook/'.$_POST['id'],'refresh');
更新查询:更新id

 function daybook($id= "")
    {
        $this->db->select('*');
        $this->db->from('daybook');
        $this->db->where('recno', $_POST['id']);
        $query = $this->db->get();
        $result = $query->result_array();
        $data['result'] = $result;
    $this->load->view('daybook', $data['result']);
    }
在daybook函数中获取id,并使用select query Get data传递视图文件。 例如:

<?php echo isset($arrayName) ? "Update" : "Add"; ?>

<input name="part" type="text" class="form-control" value="<?php echo isset($arrayName) && isset($arrayName['part']) ? $arrayName['part'] : '' ?>" id="part" placeholder="part">

这可能对你有帮助

您的数据来自哪个数组。像这样使用该数组:试试这个,我希望它能帮助您



不是函数名。您在哪个数组中通过id获取数据。是那个数组。好的。。。我正在从$result数组中获取更新值,但我没有任何数组可插入到您的控制器中。请使用检查id。如果($id!=''{updatequery}或者{insert query}请发送我以在查看页面中打印$result结果。数组([recno]=>95[date]=>2018年5月12日[code]=>[project]=>[part]=>关于[part1]=>[amount]=>10[dc]=>c[ledreno]=>0[vouno]=>0[pvouno]=>[type]=>[mark]=>[slno]=>[shift]=>[pacno]=>0)这是我第一页的$result我没有得到错误..但是当我尝试插入值时,我得到了空值,因为我在记录不存在时指定了空值..所以出现空值我不知道如何指定插入值错误Number:1048列“日期”不能为空插入
daybook
date
code
project
part
part1
dc
amount
)值(null,'1',2',null,null,null,null,null)…这是我尝试插入RTOK bro时出现的错误。您可以在查看页面中检查必填字段,或者在控制器中检查not empty。请尝试以下示例:$date=(!empty($this->input->post('date'))?$this->input->post('date'):“”;
<?php echo isset($arrayName) ? "Update" : "Add"; ?>

<input name="part" type="text" class="form-control" value="<?php echo isset($arrayName) && isset($arrayName['part']) ? $arrayName['part'] : '' ?>" id="part" placeholder="part">