Я уже задавал этот вопрос, но таким образом, что это сбивает с толку людей.
Итак, чего я хочу добиться, так это:
У меня есть метод get_user_by_email (), и он используется длязахватить строку из таблицы базы данных пользователя, который вышел из системы.
public function get_user_by_email($email_post = '') //post email grabbed from reset password controller
{
if (empty($email_post))
{
return FALSE;
}
$query = $this->db->query("SELECT * FROM users WHERE email = '$email_post'");
$query->row();
$row = $query->row();
$user_id = $row->{'id'};
$email = $row->{'email'};
$first_name = $row->{'first_name'};
$last_name = $row->{'last_name'};
//e.g. example below is just an example and obviously wouldn't work but the variables are what I use in my mysql querys ...eg. WHERE email = $email etc
return $email;
return $first_name;
return $last_name;
return $user_id;
}
Приведенный выше код не работает, и я знаю это, но я приводил пример того, что я делаю с данными, которые яполучить из строки.
Я просто хочу кое-что, как сделать это доступным для моего контроллера reset_password через out, затем мой контроллер verify_reset_code и, наконец, мой контроллер create_new_password.
Как бы я это сделал?
НОВАЯ МОДЕЛЬ
class Get_user_by_email extends CI_Model {
public function __construct() {
parent::Ci_Model();
}
public function process($email_post = '') //post email grabbed from reset password controller
{
if (empty($email_post))
{
return FALSE;
}
return $this->db->query("SELECT * FROM users WHERE email = '$email_post'");
}
}
НОВЫЙ КОНТРОЛЛЕР
<?php
class Account extends FH_Controller {
public function __construct() {
parent::__construct();
$this->load->model('get_user_by_email');
}
public function reset_password()
{
$this->load->view('reset_password');
if ($this->get_user_by_email->process($this->input->post('e-mail')))
{
$query = $this->get_user_by_email->process();
print_r($query);
}
}
public function confirm_reset_code()
{
$this->load->view('confirm_reset_code');
}
public function create_new_password()
{
$this->load->view('create_new_password');
}
}
Я ввожу электронную почту, и браузер ничего не возвращает.