【问题标题】:how to insert one value into db如何将一个值插入数据库
【发布时间】:2015-06-18 05:58:32
【问题描述】:

在我看来,我有一个下拉菜单和一个文本框..在我的下拉列表中包含 3 个值日薪、周薪和月薪..以及金额的文本字段..

在我的数据库中包含每日、每周和每月 3 列 如果我在下拉列表中选择一个值,然后在我的文本字段中输入一个金额..该金额将输入到特定列中,例如每天、每周和每月

但显示数据库错误

查看

<label>Mode of Salary</label>
<select name="salary_mode">
     <option disabled="disabled" selected>Select</option>
     <option value="1">Daily </option>
     <option value="2">Weekly</option>
     <option value="3">Monthly</option>
</select></br></br>
<input id="" name="amount_received" type="text" placeholder="Amount Received"  class="form-control">

控制器

for($i=0;$i<count($select_employee);$i++)
{
    $salary_mode=$this->input->post('salary_mode');
    // echo $salary_mode;
    $amount_received=$this->input->post('amount_received');
    // echo $amount_received;
    if($salary_mode==1)
    {
        $daily_salary=$amount_received;
        $weekly_salary=0;
        $monthly_salary=0;
    }
    else if($salary_mode==2)
    {
        $daily_salary=0;
        $weekly_salary=$amount_received;
        $monthly_salary=0;

    }
    else if($salary_mode==3)
    {
        $daily_salary=0;
        $weekly_salary=0;
        $monthly_salary=$amount_received;
    }
    $employee_id =TRIM($select_employee[$i]);
    $issued_date=$this->input->post('issued_date');

    $id=$this->session->userdata('userid');

    $salary_data=array(
        'employee_id'=>$employee_id,
        'user_id'=>$id,
        'daily_salary'=>$daily_salary,
        'weekly_salary'=>$weekly_salary,
        'monthly_salary'=>$monthly_salary,
        'issued_date'=>$issued_date,
    );
    $this->home_model->insert_salary($salary_data);
}

型号

function insert_salary($salary_data)
{
    $this->db->insert('track_salary',$salary_data);
}

【问题讨论】:

  • 这还不足以提供任何帮助。 $this 是什么? home_model 是什么?错误是什么?
  • 根据条件,您的一些工资变量可能为空,您的表格是否允许这些变量为空值?
  • 我现在编辑了..插入成功..请建议另一种方式
  • 我已经回答了你可以检查一下..希望它有效
  • @habib ul haq yes..working

标签: php mysql codeigniter


【解决方案1】:

尝试在 for 循环之前设置所有三个 daily_salary、monthly_salary 和 week_salary =0,因为您使用的是 if else,所以很明显,当 1 个条件为真时,其他两个变量将不会设置。

$daily_salary=0;
$weekly_salary=0;
$monthly_salary=0;

    for($i=0;$i<count($select_employee);$i++)
        {    
            $salary_mode=$this->input->post('salary_mode');
            // echo $salary_mode;
             $amount_received=$this->input->post('amount_received'); 
            // echo $amount_received;
              if($salary_mode==1)
             {
               $daily_salary=$amount_received;  
             }
             else if($salary_mode==2)
             {
                $weekly_salary=$amount_received; 
             }
             else if($salary_mode==3)
             {
                 $monthly_salary=$amount_received;
             }
             $employee_id =TRIM($select_employee[$i]);
             $issued_date=$this->input->post('issued_date');

             $id=$this->session->userdata('userid');

            $salary_data=array(
               'employee_id'=>$employee_id,
               'user_id'=>$id,
               'daily_salary'=>$daily_salary,
               'weekly_salary'=>$weekly_salary,
               'monthly_salary'=>$monthly_salary,
               'issued_date'=>$issued_date,
            );
            $this->home_model->insert_salary($salary_data);
        }
      }

【讨论】:

    猜你喜欢
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 2018-03-13
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    相关资源
    最近更新 更多