我阅读了关于下一个问题的所有主题,但我无法解决问题.. 在我的CodeIgniter项目中,我有这个链接来查看用户profil:
user/profil?id=1
但我想要
user/profil/1
我无法找到解决方案..在哪里放代码?我需要ROUTE或.htaccess吗? 我的htacess看起来像这样。
# Empêche la visualisation de l'arborescence, n'a rien à voir avec le masquage du « index.php ».
Options -Indexes
# Active le module de réécriture d'URL.
RewriteEngine on
#
# Fixe les règles de réécriture d'URL. Ici, nous utilisons une liste blanche.
#
# Toutes les URL qui ne correspondent pas à ces masques sont réécrites.
RewriteCond $1 !^(index\.php|assets/|robots\.txt|uploads)
# Toutes les autres URL vont être redirigées vers le fichier index.php.
RewriteRule ^(.*)$ index.php/$1 [L]
我的profil控制器:
public function profil()
{
// Récupération de l'ID dans l'url
$this->data['id'] = $this->input->get('id', TRUE);
// Statistiques du profil
$this->data['countReview'] = $this->review_model->countReview($this->data['id']);
// Chargement du profil de l'utilisateur
if (ctype_digit($this->data['id'])) {
if ($this->user_model->getUser($this->data['id'])) {
$this->data['users'] = $this->user_model->getUser($this->data['id']);
$this->data['reviewsNext'] = $this->review_model->getReviewsByUser_Next($this->data['id']);
$this->data['reviewsPrevious'] = $this->review_model->getReviewsByUser_Previous($this->data['id']);
} else {
$this->session->set_flashdata('error', 'Utilisateur introuvable.');
}
} else {
$this->data['error_report'][] = "Utilisateur introuvable.";
}
$this->load->view('template/header');
$this->load->view('template/menu');
$this->load->view('user/profil', $this->data);
$this->load->view('template/footer');
}
感谢您的回答。
答案 0 :(得分:0)
# Redirect profile.php?id=1 to profile/1
RewriteCond %{THE_REQUEST} \s/profile\.php\?id=([0-9]+)\s [NC]
RewriteRule ^/profile/%1? [R=301,L]
RewriteRule ^profile/([0-9]+)$ /profile.php?id=$1 [L]
应该工作。