2015-02-09 1 views
1

В приведенном ниже примере, когда я иду по URL-адресу: www.example.com/index.php/news/, он вызовет метод func1(), но URL-адрес не изменится на www.example.com/index.php/новости/func1. Он останется следующим: www.example.com/index.php/news/.Как обновить URL-адрес без перенаправления() в CodeIgniter?

class News extends CI_Controller { 

    public function index() 
    { 
     $this->func1(); 
    } 

    public function func1() 
    { 
     echo "news item 1"; 
    } 
} 
?> 

Я знаю, что я могу изменить URL с помощью перенаправления («/ Новости/func1»), но есть ли другой способ обновить URL, когда я вызываю метод непосредственно из метода в том же контроллере? Может быть, использование маршрутизации?

Любая помощь будет оценена.

спасибо.

В

+0

URL-адрес является то, что указанным клиент. Если вы говорите об изменении URL-адреса в браузере клиента, то единственным способом сделать это с серверной точки зрения является перенаправление. –

+0

Спасибо, Майк. Я просто хотел знать, есть ли другой способ сделать это, возможно, используя метод маршрутизации, но похоже, что нет. –

+0

Посмотрите на маршрутизацию URI. https://ellislab.com/codeigniter/user-guide/general/routing.html –

ответ

1

изменение URL может быть достигнуто с помощью JavaScript.

  1. Использование window.location = URL это изменит URL, а также обновить браузер

  2. Использование хэш в URL www.example.com/#user1 это изменит URL в хэш но не обновит браузер.

  3. Если вы хотите изменить указанный вами адрес. Я использую угловые js в режиме HTML5, чтобы изменить URL-адрес в адресной строке.

Лучше, если вы используете JQuery или любые рамки, как угловая JS, магистральную JS, Нокаут JS

Это позволит достичь вам изменить URL в браузере без обновления