Codeigniter PHP URL сегменты для профиля пользователя - PullRequest
0 голосов
/ 19 июня 2010

Мне нужно, чтобы, когда я набираю domain.com/user/1, он извлекался как переменная и затем мог использоваться для получения правильных значений базы данных.Прямо сейчас переменная устанавливается вручную с помощью domain.com/user.Как мне настроить сегменты, а затем сделать get () этот номер.Я работаю только с именами пользователей в качестве номеров, так что нет, имена просто domain.com/user/1, domain.com/user/487 и т. Д.

Ответы [ 3 ]

3 голосов
/ 19 июня 2010

Посмотрите на URI Routing: http://codeigniter.com/user_guide/general/routing.html

Что-то вроде:

$route['user/(:num)'] = "user/user_lookup/$1";

в вашем файле config / rout.php, вероятно, будет делать то, что вы хотите.

0 голосов
/ 19 июня 2010

В вашем контроллере вы можете использовать функцию пользователя:

function user($id){
    $this->db->where('userid',$id);
    $q = $this->db->get('user');
    $data['userdata']=$q;
    $this->load->view('user_view',$data);
}

Это запросит таблицу user в базе данных для id, переданную в URL, и отправит результаты в представление user_view. например http://site.com/user/5 будет запрашивать пользовательские данные, которые соответствуют userid из 5.

0 голосов
/ 19 июня 2010

Насколько я понимаю, вы можете передать сегмент в вашу модель, когда вы вызываете его в контроллере с таким URI, как этот

$this->usermode->get_user($this->uri->segment(3));

и получаете его в вашей модели как параметр

function get_user($user){
$this->db->where('userid', $user);
$query= $this->db->get('user');

if($query){
return $query->result();
}else{
return false;
}
}

Надеюсь, я правильно понимаю, что вы хотите сделать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...