PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-获取CodeIgniter在表单提交后保存值大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我是CodeIgniter的新手,在简单的CRUD应用程序中提交表单(错误与成功)后,我真的很难让表单值重新填充.我认为如果在此处发布代码可能会有所帮助,也许有人可以提供帮助.

这是从我的控制器来的:

function update($id){

        $seller = $this->seller_model->get_seller_byID($id)->row();
        $data['seller'] = $seller;

        $data['title'] = 'update seller';
        $data['message'] = '';
        $data['action'] = site_url('seller/updateSeller');
        $data['link_BACk'] = anchor('seller/ManageSellers/','BACk to list of sellers',array('class'=>'BACk'));

        $this->load->view('EditSeller', $data);
    }

    function updateSeller(){

        $data['title'] = 'update seller';
        $data['action'] = site_url('seller/updateSeller');
        $data['link_BACk'] = anchor('seller/ManageSellers/','BACk to list of sellers',array('class'=>'BACk'));

        $this->SETVALidation();

        if ($this->form_validation->run() == falSE)
        {
        $data['message'] = 'fail';
        }
        else
        {
            $id = $this->input->post('id');

            $seller = array('s_fname' => $this->input->post('fname'),
                            's_lname' => $this->input->post('lname'),
                            's_email' => $this->input->post('email'),
                            's_password' => $this->input->post('pword'));

            $this->seller_model->update_seller($id,$seller);

            $data['message'] = '<div class="success">update seller success</div>';
        }   
        $this->load->view('EditSeller', $data);
    }

    function SETVALidation()
    {
        $this->form_validation->set_rules('fname', 'First Name', 'required');
        $this->form_validation->set_rules('lname', 'last name', 'required');
        $this->form_validation->set_rules('email', 'Email', 'required');
        $this->form_validation->set_rules('pword', 'password', 'required');
        $this->form_validation->set_rules('status', 'Status', 'required');
        $this->form_validation->set_rules('dealer', 'Dealer', 'required');
    }   

这是我的看法:

    <html>
<head>

</head>
<body>
        <h2><?PHP echo $title; ?></h2>

        <?PHP echo $message; ?>

        <?PHP echo validation_errors(); ?>

    <div class="content">
        <form method="post" action="<?PHP echo $action; ?>">
        <div class="data">           

                <p><?PHP
                    if (isset($seller->s_id))
                    {
                        echo "Id: " . $seller->s_id;
                        echo form_hidden("id", isset($seller->s_id) ? $seller->s_id : '' );
                    }
                ?></p>

                <p>First Name: 
                    <?PHP 
                        $field = array(  'name' => 'fname', 
                                         'size' => 30, 
                                         'class'=>'input', 
                                         'value' => (isset($seller->s_fName) ? $seller->s_fname : '' ) );
                        echo form_input($field, set_value('fname')); 
                    ?>
                </p>

                <p>last name: 
                    <?PHP 
                        $field = array(  'name' => 'lname', 
                                         'size' => 40, 
                                         'class'=>'input', 
                                         'value' => (isset($seller->s_lName) ? $seller->s_lname : '' ) );
                        echo form_input($field, set_value('lname')); 
                    ?>
                </p>

                <p>Email: 
                    <?PHP 
                        $field = array(  'name' => 'email', 
                                         'size' => 60, 
                                         'class'=>'input', 
                                         'value' => (isset($seller->s_email) ? $seller->s_email : '' ) );
                        echo form_input($field, set_value('email')); 
                    ?>
                </p>

                <p>password: 
                    <?PHP 
                        $field = array(  'name' => 'pword', 
                                         'size' => 20, 
                                         'class'=>'input', 
                                         'value' => (isset($seller->s_password) ? $seller->s_password : '' ) );
                        echo form_password($field, set_value('pword')); 
                    ?>
                </p>

                <p>Status: 
                    <SELEct name="status">
                        <option value="1" <?PHP echo set_SELEct('status', '1', TRUE); ?>>Verified</option>
                        <option value="2" <?PHP echo set_SELEct('status', '2'); ?>>Not verified</option>
                    </SELEct>
                </p>

                <p>Dealer:
                    <input type="radio" name="dealer" value="Y" <?PHP echo set_radio('dealer', '1', TRUE); ?>/> Yes
                <input type="radio" name="dealer" value="N" <?PHP echo set_radio('dealer', '2'); ?>/> No
                </p>

                <p><?PHP
                    if (isset($seller->s_startdatE))
                    {
                        echo "Start Date: " . $seller->s_startdate;
                    }
                ?></p>

           <input type="submit" value="Save"/>

               <p><?PHP echo $link_BACk; ?></p>

        </div>
        </form>
        <br />
    </div>
</body>
</html>

如果我的验证成功,它将正确保存到数据库,但是在重新加载页面时,不会填充该文本框.发生验证错误时,数据库不会按预期进行更改,但值不会保留在表单字段中.

解决方法:

更改

  $field = array(  'name' => 'fname', 
        'size' => 30, 
        'class'=>'input', 
        'value' => (isset($seller->s_fName) ? $seller->s_fname : '' ) );
  echo form_input($field, set_value('fname')); 

  $field = array(  'name' => 'fname', 
        'size' => 30, 
        'class'=>'input', 
        'value' => set_value('s_fname', (isset($seller->s_fName) ? $seller->s_fname : '' )) );
  echo form_input($field); 

(并针对所有其他类似的情况执行相同的操作.

您可以了解有关set_value以及重新填充表格here的更多信息.

大佬总结

以上是大佬教程为你收集整理的php-获取CodeIgniter在表单提交后保存值全部内容,希望文章能够帮你解决php-获取CodeIgniter在表单提交后保存值所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: