我有一个表单,可用于不同的操作(插入和更新)。我使用isset
函数进行更新。这是完整代码:
<div id="form_daftar">
<?php echo form_open($action) ?>
<?php
if($action === 'backend/pengurus/add')
$pengurus['email'] = '';
?>
<p id="input_nama">
Nama : <?php echo form_input('txt_nama', isset($pengurus['nama'])?$pengurus['nama']:"");?>
</p>
<p id="input_email">
Email : <?php echo form_input('txt_email',
isset($pengurus['email'])?$pengurus['email']:"");?>
</p>
<p id="input_password">
Password : <?php echo form_password('txt_pengurus');?>
</p>
<p id="input_alamat">
Alamat : <?php echo form_input('txt_alamat', isset($pengurus['alamat'])?$pengurus['alamat']:"");?>
</p>
<p id="input_tanggal_lahir">
Tanggal Lahir : <input type="text" id="datepicker" name="datepicker"
value="<?php echo isset($pengurus['tanggal_lahir'])?$pengurus['tanggal_lahir']:""?>"/>
</p>
<?php
$action === 'backend/pengurus/add' ? $label = "Daftarkan Pengurus" : $label = "Update Data Pengurus";
echo form_submit('btn_insert', $label);
?>
<?php echo form_close(); ?>
</div>
然而,我有一个奇怪的错误,因此isset无法正常工作。所以,我试图添加这段代码(上面的代码片段):
<?php
if($action === 'backend/pengurus/add')
$pengurus['email'] = '';
?>
但是,$pengurus['email']
无法识别,虽然它在此代码下方的表单中被识别(查看完整代码)。
我该怎么办?
感谢任何帮助,请问我是否不理解我的问题(英语不是我的本地语言)。感谢:d
答案 0 :(得分:3)
用于在CI中设置表单输入的默认值,使用set_value(),如:
<?php echo form_input('txt_nama', set_value('txt_nama', ''));?>
答案 1 :(得分:1)
这很简单
当您加载表单以进行插入时,您可以添加一个空数组 并将其传递给表格
$pengurus['name'] = '';
$pengurus['email'] = '';
$pengurus['blah'] = '';
$data['pengurus'] = $pengurus;
$this->load->view('form',$pengurus);
当您加载表单以进行更新时,您可以填写这些
$pengurus['name'] = $row->name;
$pengurus['email'] = $row->email;
$pengurus['blah'] = $row->blah;
$data['pengurus'] = $pengurus;
$this->load->view('form',$pengurus);
// $ row是使用模型
检索的对象现在你可以在表格中执行此操作
echo form_input('name', set_value('name',$pengurus['name']));
set_value
将第二个参数作为默认值。 。的默认值
插入是'',更新是name
。提交表格时
如果失败,它将在提交之前检查您提供的价值
如果没有找到它将显示默认值(插入''和for
更新行 - >名称)。希望这有帮助