0

Opencart MVCの新機能です。my_account.tplというページがあります。このページには、顧客nameとが表示されていますtin_number

顧客が変更したい場合tin_numberは、TIN 番号フィールドに入力して [保存] をクリックするだけで、テーブルが更新oc_customerされます。

やってみましたが、データが更新されません。

次のビュー、モデル、およびコントローラー コード

ビュー: my_account.tpl

<form action="<?php echo $action;?>" method="POST" enctype="multipart/form-data" class="form-horizontal">
            <div class="col-md-9 col-lg-6 col-sm-12">

                <?php foreach($customerData as $customer) { ?>

                <div class="form-group">
                    <label>Name:</label>
                    <input type="text" style="display: none" placeholder="ID" name="id" value="<?php echo $result['tin_number'];?>">
                    <input type="text" name="name" value="<?php echo $customer['name']; ?>" placeholder="Name" class="form-control" disabled>
                </div>

                <div class="form-group">
                    <label>TIN Number:</label>
                    <input type="text" name="tin_number" value="<?php echo $customer['tin_number']; ?>" placeholder="TIN Number" class="form-control">
                </div>

                <?php } ?>
                <div class="form-group">
                    <input type="submit" name="save" value="<?php echo 'Save'; ?>" class="btn btn-primary">
                </div>

            </div>
        </form>

コントローラー: my_account.php

public function edit() {

        /*form edit my_account*/
         if(isset($_GET['tin_number']))
        {
            $tin_number=$_GET['tin_number'];
        }
        $this->load->model('account/customer');
        $data['delivery_point']=$this->model_account_customer->getcustomerId($tin_number);
        $data['action'] = $this->url->link('account/my_account', '', 'SSL');


        if ($this->request->server['REQUEST_METHOD'] == 'POST')
        {
            $this->model_account_customer->editCustomerTin($this->request->post);
            $this->response->redirect($this->url->link('account/home', '', 'SSL'));
            echo "<script>javascript: alert('test msgbox')></script>";
        }
        /*form edit my_account*/

}

モデル: my_account.php

public function editCustomerTin($data)
    {
         $query = $this->db->query("UPDATE " . DB_PREFIX . "customer set tin_number='".$data['tin_number']."' where customer_id=".$data['id']);
    }
4

1 に答える 1