创建注册表时的"Undefined variable: array"



我在为我的网站创建注册表时 http://www.youtube.com/watch?v=wuvq941piDI&feature=relmfu 了这些教程。我注意到有时教程中没有显示需要对一切正常进行哪些更改。到目前为止,我认为我没有犯任何错别字错误,因为我仔细检查了所有内容。但我仍然遇到问题:

遇到 PHP 错误

严重性:通知

消息:未定义的变量:数组

文件名:型号/user_model.php

行号:10

这是user_model.php(模型)

$

function register_user($username, $password, $name, $email)
{
    $sha1_password = sha1($password);
    $query_str = "INSERT INTO tbl_user (username, password, name, email) VALUES (?, ?, ?, ?)";
    $this->db->query($query_str, $array($username, $sha1_password, $name, $email));
}   

}

和用户.php(控制器)

function index()
{
    $this->register();
}
function register()
{
    $this->load->library('form_validation');
    $this->form_validation->set_rules('username', 'Username', 'trim|required|alpha_numeric|min_length[6]|xss_clean');
    $this->form_validation->set_rules('name', 'Name', 'trim|required|alpha_numeric|min_length[6]|xss_clean');
    $this->form_validation->set_rules('email', 'Email Address', 'trim|required|min_length[6]|xss_clean|valid_email');
    $this->form_validation->set_rules('password', 'Password', 'trim|required|alpha_numeric|min_length[6]|xss_clean');
    $this->form_validation->set_rules('password_conf', 'Password Confirmation', 'trim|required|alpha_numeric|min_length[6]|matches[password]|xss_clean');


    if ($this->form_validation->run() ==FALSE)
    {
        $this->load->view('view_register');         //errors
    }
    else
    {
        $username = $this->input->post('username');
        $name = $this->input->post('name');
        $password = $this->input->post('password');
        $email = $this->input->post('email');
        $this->load->model('User_model');
        $this->User_model->register_user($username, $password, $name, $email);
    }

}

}

我不在这里粘贴视图,因为我认为它现在没有用。我也总是删除带有"parent:"的函数。它总是给我带来麻烦,我不知道如何使用它,所以我只是将所需的信息粘贴到需要的地方。到目前为止,它工作正常。我是新手,所以这个问题可能很简单,或者我只是不应该删除那个父::。

你有$array($username, $password...)它应该array($username, $password...)的地方。还有一个额外的 $,第一个函数的第三行。

你在user_model.php的这一行有一个错别字

$this->db->query($query_str, $array($username, $sha1_password, $name, $email));

应该是

$this->db->query($query_str, array($username, $sha1_password, $name, $email));

最新更新