Welcome Guest, Not a member yet? Register   Sign In
BadMethodCallException Call to undefined method App\Models\UserModel::escapeString
#1

This error after clicking 'Biodata' menu. I don't know if the issue lies with the if Call to undefined method App\Models\UserModel::escapeString. This error appears when im typing code [i][b]$id = $userModel->escapeString(esc($this->request->uri->getSegment(4)));[/b][/i]

[i][b]My Controller[/b][/i]

Code:
public function change_profile()
    {
       
        helper(['form', 'url']);
        $userModel = new UserModel();

        $id = $userModel->escapeString(esc($this->request->uri->getSegment(4)));

        if ($this->request->getMethod() == 'post') {
            $rules = [
                'nama'      => 'required|alpha_space|min_length[2]',

            ];

            if ($this->validate($rules)) {
                $params = [
                    'nama'      => $userModel->escapeString(esc($this->request->getPost('nama'))),

                ];

                $update = $userModel->update($id, $params);

                if ($update) {
                    session()->setFlashdata('success', 'Berhasil edit data');
                    return redirect()->route('admin/user/change_profile');
                } else {
                    session()->setFlashdata('danger', 'Gagal edit data');
                    return redirect()->route('admin/user/change_profile')->withInput();
                }
            } else {
                $data['validation'] = $this->validator;
            }
        }

        $data['title'] = 'Dokumen';
        $data['user'] = $userModel->find($id);

        return view('admin/users/profile', $data);
    }

[i][b]My View [/b][/i]

Code:
<div class="container">
            <div class="card">
                <div class="card-body">
                    <form action="<?= base_url('admin/user/change_profile') ?>" method="POST" enctype="multipart/form-data">
                        <?= csrf_field(); ?>

                        <div class="form-group">
                          <label for="nama">Nama</label>
                          <input type="text" class="form-control" name="nama" id="nama" value="<?= $user['nama'] ?>" >
                        </div>
       
                         <input type="submit" value="Update" class="btn btn-info"/>
                    </form>
                </div>
            </div>
        </div>

im using Codeigniter 4. Whats wrong with my code
Reply




Theme © iAndrew 2016 - Forum software by © MyBB