Pergunta

Basicamente, eu tenho um site principalmente baseado em Ajax. Quando você carrega um resultado, ele aparece via Ajax, e a barra de endereço da URL muda de mysite.com para mysite.com/#xyz/A_Random_Title.

A_Random_Title é um título formatado de Seo #xyz. xyz é o ID do resultado carregado e é usado para consultar o banco de dados.

Existe alguma maneira de o Codeigniter pode ler o URL atual assim? Não quero dizer lê -lo depois que a página é carregada, mas leia uma solicitação ... espero que faça sentido!

Obrigado!

Jack

Foi útil?

Solução

Não, está disponível apenas para o navegador, então você tem que lidar com JavaScript. O servidor não pode lê -lo.

Explicação:
Basicamente, o componente de hash do URL da página (a peça após o sinal #) é processada apenas pelo navegador - o navegador nunca o passa para o servidor. Infelizmente, isso faz parte do padrão HTML e é o mesmo se você está usando ou não o IE ou qualquer outro navegador (e, nesse caso, o PHP ou qualquer outra tecnologia do lado do servidor).

Aqui está o quê Wikipedia diz sobre isso:

O identificador de fragmento funciona de maneira diferente do que o restante do URI: a saber, seu processamento é exclusivamente do lado do cliente, sem participação do servidor. Quando um agente (como um navegador da Web) solicita um recurso de um servidor da Web, o agente envia o URI para o servidor, mas não envia o fragmento. Em vez disso, o agente aguarda o servidor enviar o recurso e, em seguida, o agente processa o recurso de acordo com o valor do fragmento. No caso mais comum, o agente rola uma página da web até o elemento âncora que possui uma sequência de atributos igual ao valor do fragmento. Outros comportamentos do cliente são possíveis

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top