为了账号安全,请及时绑定邮箱和手机立即绑定

在数据库codeigniter上保存时选择选项问题

在数据库codeigniter上保存时选择选项问题

PHP
尚方宝剑之说 2022-01-14 18:06:59
我在保存到数据库时遇到了这个选择选项问题这是我的代码<div class="col-sm-2 control-label no-padding-right">                <div id="loantype">                    <select class="form-group loan_type" id="loan_type form-field-2" name="loan_type" value="<?php echo set_value('loan_type');?>" required>                        <option value="0">Select Loan Type</option>                        <option value="Personal">Personal</option>                        <option value="Business">Business</option>                    </select>                   </div>            </div>            <div class="col-sm-2 control-label no-padding-right">                <div class="personalloan" id="personalloan" style="display:none">                    <select class="form-group loan_amount" id="loan_amount form-field-2" name="loan_amount" value="<?php echo set_value('loan_amount');?>" required>                        <option value="0">Select Loan Amount</option>                        <option value="10000">P10,000</option>                        <option value="20000">P20,000</option>                        <option value="30000">P30,000</option>                    </select>                   </div>Business如果我选择将出现的话也是如此businessloan。但问题是只有选择选项businessloan中的数据被保存在数据库中,但是当我在personalloan其始终为 0 上选择某些内容时。我这样保存'loan_type' => $this->input->post('loan_type'),'loan_amount' => $this->input->post('loan_amount'),有什么问题?
查看完整描述

2 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

让我们从一些问题开始。

  • id在多个元素上有相同的内容。id's'在文档中必须是唯一的。

  • name在两个选择上都有相同的选择,这将使一个在表单发布时覆盖另一个

因此,让我们从更改名称和 ID 开始:

<!-- The personal select -->

<select class="form-group loan_amount" id="loan_amount_personal" name="loan_amount_personal" required>


<!-- The business select -->

<select class="form-group loan_amount" id="loan_amount_business" name="loan_amount_business" required>

如果有的话,您可能需要用新的 id 更新 javascript 中的任何引用。


然后,当表单发布时,您会根据类型获得所需的选择:


$amount = null;


if ($this->input->post('loan_type') === 'Personal') {

    $amount = $this->input->post('loan_amount_personal');

} else {

    $amount = $this->input->post('loan_amount_business');    

}


// Or for short:

$amount = $this->input->post('loan_type') === 'Personal'

    ? $this->input->post('loan_amount_personal')

    : $this->input->post('loan_amount_business');

然后,在构建数组时:


'loan_type'   => $this->input->post('loan_type'),

'loan_amount' => $amount,


查看完整回答
反对 回复 2022-01-14
?
叮当猫咪

TA贡献1776条经验 获得超12个赞

我已经看到您在个人贷款和商业贷款中具有相同的名称。(输入类型名称)。请给出不同的名称。并且在输入 id 中始终通过一个参数传递。


查看完整回答
反对 回复 2022-01-14
  • 2 回答
  • 0 关注
  • 142 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信