【发布时间】:2013-10-20 14:55:00
【问题描述】:
我目前正在使用 codeigniter。我目前可以通过使用 /user/profile/profile_id 查看个人资料,但我想这样做,以便用户可以使用 /username 导航到个人资料以使其更简单。
我不知道从哪里开始,我该怎么做?
class User extends CI_Controller{
public function index(){
if($this->session->userdata('is_logged_in')){
redirect('user/profile');
}
}
public function profile(){
$profile_id = $this->uri->segment(3);
$ip = $this->session->userdata('ip_address');
$curr_user = $this->session->userdata('id');
$data['profile'] = $this->db->get_where('users', array('id' => $profile_id))->row_array();
$data['followers'] = $this->db->get_where('followers', array('following_id' => $profile_id))->num_rows();
$data['following'] = $this->db->get_where('followers', array('follower_id' => $profile_id))->num_rows();
$data['doesFollow'] = $this->db->get_where('followers', array('follower_id' => $curr_user, 'following_id' => $profile_id))->num_rows();
$data['posts'] = $this->db->get_where('posts', array('user_id' => $profile_id))->result_array();
$data['main_content'] = 'profile';
$this->load->view('template', $data);
$this->get_profile_view($profile_id, $ip, $curr_user);
}
}
routes.php
$route['default_controller'] = "signin";
$route['404_override'] = '';
【问题讨论】:
-
请添加更多信息
-
您能否添加更多关于要求我添加更多信息的信息?你需要知道什么?
-
使用用户/用户名或用户/配置文件/用户名导航到配置文件?
-
这就是为什么我只想使用
www.mysite.com/username而不是像user/profile/username这样的大网址。我看过 CI 文档,它看起来像一个路由问题,但我不确定如何使用它。你知道我会如何路由它,使它成为/username -
我建议发布您的 routes.php。您将需要创建一个 catch all 路由以将所有 uri 重定向到用户控制器。
标签: php codeigniter uri friendly-url