首页 > 解决方案 > 在 Codeigniter 中使用 form_helper 时无法填充字段

问题描述

表单正在填充我以前的项目中的工作,但现在不是。我检查了我以前项目的代码并复制粘贴它,但它仍然没有填充它。当我输入并提交它时,它显示为空白,但是当我在浏览器中检查它时,它显示如下:

检查这张图片

以下是我的看法:

<div class="form-group">
<?php echo form_hidden('STUD_ID', @$upd->STUD_ID); ?>
<?php echo form_label('Student name','name'); ?>
  <?php echo form_input("STUD_NAME",@$upd->STUD_NAME,set_value('STUD_NAME'),["class"=>"form-control","placeholder"=>"John
 Doe"]);?>
     <?php echo form_error('STUD_NAME'); ?>   </div> <div class="form-group">
    <?php echo form_label('Password','password'); ?>
    <?php echo form_input('STUD_PASS',@$upd->STUD_PASS,['class'=>'form-control','placeholder'=>'******']),set_value('STUD_PASS')
 ?>
     <?php echo form_error('STUD_PASS'); ?>   </div>

控制器

$this->form_validation->set_rules('STUD_NAME','Username','trim|required|is_unique[student.STUD_NAME]');
$this->form_validation->set_rules('STUD_PASS', 'Password', 'trim|required|min_length[5]');
$this->form_validation->set_rules('STUD_EMAIL', 'Email', 'trim|required|valid_email');
$this->form_validation->set_rules('STUD_ADD', 'Address', 'trim|required');
$this->form_validation->set_rules('STUD_PHONE', 'Phone', 'trim|required|min_length[10]');
$this->form_validation->set_rules('STUD_GENDER', 'Gender', 'trim|required');
$this->form_validation->set_rules('HOBBY[]', 'Hobby', 'trim|required');
$this->form_validation->set_error_delimiters('<small style="color:red">','</small>');
if ($this->form_validation->run() == TRUE) {
.......
}

标签: phpcodeignitercodeigniter-3

解决方案


试试这段代码:form_input用这样的数组初始化

形式应该是这样的:

<div class="form-group">
    <?php echo form_hidden('STUD_ID', @$upd->STUD_ID); ?>
    <?php echo form_label('Student name','name'); ?>
    <?php echo form_input(["name" => "STUD_NAME","value" => set_value('STUD_NAME',@$upd->STUD_NAME),"class"=>"form-control","placeholder"=>"JohnDoe"]);?>
    <?php echo form_error('STUD_NAME'); ?>   
  </div> 
  <div class="form-group">
    <?php echo form_label('Password','password'); ?>
    <?php echo form_input(["name" => "STUD_PASS","value" => set_value('STUD_PASS',@$upd->STUD_PASS),"class"=>"form-control","placeholder" => "******"]);?>
    <?php echo form_error('STUD_PASS'); ?>   
  </div>

查看更多:https ://www.codeigniter.com/user_guide/helpers/form_helper.html#form_input


推荐阅读