Как и facebook (facebook.com/userurl) Мне нравится использовать domain.com/username
в codeigniter. Здесь имя пользователя уникальное. Я хочу, чтобы каждый пользователь реестра имел свой собственный URL-адрес (путь). Может ли кто-нибудь помочь в этом?Как использовать domain.com/username в codeigniter?
ответ
Это не URL. Понимать концепцию. У вас есть основная проблема. Используйте этот идентификатор в качестве параметра (метод GET).
Смотрите эту картинку:
Получить что-нибудь? Для more...
В вашей точки использовать
$this->uri->segment(2);
Как ваш вопрос,
localhost/codeigniter/ripon
это ваш URL. Таким образом, в вашем умолчанию контроллер, путь 1:
public function index($user)
{
echo "User is ".$user;
}
путь 2:
public function index()
{
$user = $this->uri->segment(2);
echo "User is ".$user;
}
Добавьте следующий код в файл routes.php в конфиги перед любыми пользовательскими маршрутами
$handle = opendir(APPPATH."/controllers");
while (false !== ($file = readdir($handle))) {
if(is_dir(APPPATH."/controllers/".$file)){
$route[$file] = $file;
$route[$file."/(.*)"] = $file."/$1";
}
}
/*Your custom routes here*/
/*Wrap up, anything that isnt accounted for pushes to the alias check*/
$route['([a-z\-_\/]+)'] = "aliases/check/$1";
Пожалуйста, обратитесь к этим вопросам - How would i create a vanity url in codeigniter
Вкратце, мы проверяем, существует ли имя контроллера и функции в URL..IF, тогда мы направляем его на эту функцию. Иначе мы отправим контроллеру псевдонимов & функцию проверки, чтобы узнать, существует ли пользователь с этим имя пользователя.
Я получающее желание SOLUTION http://www.aamra24.com/how-to-use-domain-then-username-in-codeigniter/
Вам нужно добавить следующий код приложение/Config/routes.php
$route['(.*)'] = "welcome/index/$1";
Вот «привет» это имя контроллера и «вы» это имя функции , Я не хотел указывать его в url, я хочу указать имя пользователя как параметр –
. см. это, http://ellislab.com/codeigniter/user-guide/libraries/uri.html – KarSho
@KarSho, о чем он говорит, касается тщеславия. –