我在为我的网站创建注册表时 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));