【发布时间】:2021-02-06 15:47:07
【问题描述】:
我希望选定的值从视图传递到控制器,但它不起作用,我尝试了一百种不同的方法来实现它,我尝试使用复选框而不是无线电,它有效,但我不能选择产品,它只是一直选择第一个产品,使用 set radio,我看到当我想选择产品时,它添加了 checked=checked 但它没有传递给控制器。
控制器.php
public function form()
{
helper(['form']);
$projectModel = new ProjectsModel();
if ($this->request->getMethod() == 'post') {
$rules = [
'firstname' => 'required|min_length[3]|max_length[20]',
'lastname' => 'required|min_length[3]|max_length[20]',
'email' => 'required|min_length[6]|max_length[60]|valid_email|is_unique[accounts.email]',
'company' => 'required|min_length[3]|max_length[20]',
'location' => 'required|min_length[3]|max_length[20]',
'address' => 'required|min_length[3]|max_length[20]',
'product' => 'required',
];
if(!$this->validate($rules)) {
$data['validation'] = $this->validator;
}
else {
$newData = [
'id' => session()->get('os_id'),
'firstname' => $this->request->getVar('firstname'),
'lastname' => $this->request->getVar('lastname'),
'email' => $this->request->getVar('email'),
'company' => $this->request->getVar('company'),
'location' => $this->request->getVar('location'),
'address' => $this->request->getVar('address'),
'product' => $this->request->getVar('product'),
];
$projectModel->save($newData);
session()->setFlashdata('success', 'Successful updated');
return redirect()->to('form/success');
}
}
$data['user'] = $projectModel->where('id', session()->get('id'))->first();
echo view('templates/header', $data);
echo view('form', $data);
echo view('templates/footer', $data);
}
查看.php
/><div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shirt">
<input type="radio" name="product[]" value="2" <?php echo set_radio('product', '2'); ?> />
<div class="icon">
<img class="icons" src="../shirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="Chiloti">
<input type="radio" name="product[]" value="3" <?php echo set_radio('product', '3'); ?> />
<div class="icon">
<img class="icons" src="../tshirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shirt">
<input type="radio" name="product[]" value="4" <?php echo set_radio('product', '4'); ?> />
<div class="icon">
<img class="icons" src="../shirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shirt">
<input type="radio" name="product[]" value="5" <?php echo set_radio('product', '5'); ?> />
<div class="icon">
<img class="icons" src="../shirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shirt">
<input type="radio" name="product[]" value="5" <?php echo set_radio('product', '6'); ?> />
<div class="icon">
<img class="icons" src="../shirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="Chiloti">
<input type="radio" name="product[]" value="7" <?php echo set_radio('product', '7'); ?> />
<div class="icon">
<img class="icons" src="../tshirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shirt">
<input type="radio" name="product[]" value="8" <?php echo set_radio('product', '8'); ?> />
<div class="icon">
<img class="icons" src="../shirt.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
<div class="col-sm-4">
<div class="choice" data-toggle="wizard-radio" rel="tooltip" title="shoes">
<input type="radio" name="product[]" value="9" <?php echo set_radio('product', '9'); ?> />
<div class="icon">
<img class="icons" src="shoes.svg" alt="" style="width:45%;margin-top: 25%;">
</div>
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
标签: codeigniter-4