Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Entrei num site para baixar algumas músicas e reparei que na url dele ficava assim:
dominio.com/#**
**
********
****
**#quality320**
Existe mais de uma forma de se passar paramêtros pela url?
Exceto: ?param=imasters
Ou o sistema pega toda a url e começa a pegar os paramêtros depois da # (tralha) ?
Obrigado pela atenção!!
>
Por esta razão, não é possível obter o hash de uma URL através do PHP.
Para este último, você precisa de algum componente client-side (javascript) que possa interpretar esses parâmetros.
isso eu sei que ele leva pra "div, clas, etc" oque eu queria ter certeza como o site faz isso, se ele "varre" a url e começa a pergar os valores depos do #, entende?
Evandro, você consegue obter o valor do hash a partir de uma string, mas esse hash não chega ao servidor de forma alguma.
Dá um [inline]var_dump[/inline] aí no [inline]$_SERVER[/inline] pra vc ver...
>
o que eu queria ter certeza como o site faz isso, se ele "varre" a url e começa a pergar os valores depos do #, entende?
Não com PHP...
>
Evandro, você consegue obter o valor do hash a partir de uma string, mas esse hash não chega ao servidor de forma alguma.
Dá um [inline]var_dump[/inline] aí no [inline]$_SERVER[/inline] pra vc ver...
Não com PHP...
Na verdade, acho que nem com PHP nem com nada. Testei, como você disse, e o conteúdo depois da tralha não aparece nem no access log.
O símbolo '#' não identifica uma query string, é um hash (fragmento).
Hashes no que diz respeito à páginas web nada mais são do que o identificador de uma sessão específica do conteúdo.
Quando você faz:
http://meusite.com/index.php#secao-2
você está buscando o fragmento "secao-2" da página "index.php".
Normalmente, o navegador irá automaticamente rolar a página até o início do elemento que possui o id "secao-2" na página.
Perceba que essa é uma característica do lado do cliente. Perceba que se vc trocar "secao-2" por "secao-1" no campo de endereço do navegador, a página NÃO será recarregada, apenas mover-se-á para o elemento "secao-1".
Por esta razão, não é possível obter o hash de uma URL através do PHP.
Entretanto, hoje em dia, perdeu-se esse significado e muitas aplicações web por aí utilizam o hash como um meio de passar parâmetros para requisições assíncronas (o vulgo Ajax), se aproveitando do fato de que uma mudança no hash não atualiza a página.
Respondendo a sua pergunta: existem apenas 2 maneiras de se passar parâmetros pela URL: query strings e hashes.
Para este último, você precisa de algum componente client-side (javascript) que possa interpretar esses parâmetros.