Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola gente boa noite
Vim com um problema meio simples mais esta me dando dor de cabeça por causa do codigo que ate para mim esta ficando meio tenebroso a logica que eu usei para escreve-lo mais eu consigo entender e é isso que importa certo
Gostaria de saber como recuperar a url so que somente uma parte dela + ou - assim
minha url esta assim
www.site.com/categoria/
então gostaria de saber como consigo recuperar a url na tela e fazer um tratamento nela para que ela possa mostrar isso na tela
categoria
Alguem pode me ajudar a fazer isso?
>
Acho que o que você esta querendo é usar url amigavel.
alguns links do site da imasters que podem le ajudar:
http://imasters.com.br/artigo/6841/php/urls-amigaveis-algumas-tecnicas/
http://imasters.com.br/artigo/11219/php/funcao-para-criar-url-amigavel-com-php/
Não ja utilizo url amigavel quero recuperar ela na tela
Já que usa url amigável, pode usar uma fórmula (fácil de achar no google) pra pegar a URL e tentar usar a explode() quebrando por / ...
Ta mais como faço para recuperar a url e a tratar
por que irei utilizar isso para usar dentro da tag title
mais ou menos assim
www.meusite.com/categoria
ai gostaria de saber como pegar a url fazer um tratamento nela para que consiga mostrar na tela
ai pego essa informação e utilizo dentro da tag title
> <title><?php echo $RetornoUrl ?></title>
Isso que gostaria de fazer
Vamos tentar um raciocínio mais simplificado: como está o seu htaccess? Pois o modo mais fácil de resgatar isto é exatamente pela regra que você está usando nas urls amigáveis.
Não tenho como testar do trabalho, mas tente algo assim:
function curPageURL()
{
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
$url = curPageURL();
$pagina = explode("/", $url);
echo $pagina[1];exemplo de url
Resgatar a URL do site
echo $_SERVER['SERVER_NAME'];
vai retornar
localhost
resgatar o que vem DEPOIS da url do site
echo $_SERVER ['REQUEST_URI'];
vai retornar
/teste/
Veja se algo disso te ajuda no que você quer.
>
Não tenho como testar do trabalho, mas tente algo assim:
function curPageURL()
{
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
$url = curPageURL();
$pagina = explode("/", $url);
echo $pagina[1];
seu codigo esta dando um erro e não funciona
>
exemplo de url
Resgatar a URL do site
echo $_SERVER['SERVER_NAME'];
vai retornar
localhost
resgatar o que vem DEPOIS da url do site
echo $_SERVER ['REQUEST_URI'];
vai retornar
/teste/
Veja se algo disso te ajuda no que você quer.
O seu puxa o que eu queria mesmo mais sem o tratamento
usando
> echo $_SERVER ['REQUEST_URI'];
me retorna isso
/jogos-zika/tiro/
gostaria que fica-se somente
tiro
excluindo /jogos-zika/ e a ultima barra do final
É só alterar aqui.
echo $pagina[1];
Troque o 1 por 2 e depois tratar a variável para remover o barra, para isso existem diversas maneiras, eu faria assim.
$pagina = str_replace("/", "", $pagina);
Se for sempre o último texto da URL, pode usar:
$count = count($pagina);
$ultimo = $count - 1;
echo $pagina[$ultimo];Se quer tirar o resto faz como o Ricardo barantini falou
segue um exemplo do que eu faria neste caso
$link = $_SERVER ['REQUEST_URI'];
$pagina = str_replace("/jogos-zika/", "", $link);
echo $pagina;
É isso que precisa?
>
Se quer tirar o resto faz como o Ricardo barantini falou
segue um exemplo do que eu faria neste caso
$link = $_SERVER ['REQUEST_URI'];
$pagina = str_replace("/jogos-zika/", "", $link);
echo $pagina;
É isso que precisa?
Erra isso mais consegui ja resolver o problema
Gente consegui resolver o meu problema utilizando str_replace
Se alguem estiver com o mesmo problema que eu ou parecido ao meu, dem uma olhada no codigo para ver se serve
<?PHP
$teste = $_SERVER ['REQUEST_URI'];
$string = $teste;
$origem = array('/jogos-zika/');
$destino = array('');
$novo = str_replace($origem, $destino, $string);
$string2 = $novo;
$novo2 = str_replace('/', '', $string2);
?>
<title><?php echo $novo2; ?></title>
Acho que o que você esta querendo é usar url amigavel.
alguns links do site da imasters que podem le ajudar:
http://imasters.com.br/artigo/6841/php/urls-amigaveis-algumas-tecnicas/
http://imasters.com.br/artigo/11219/php/funcao-para-criar-url-amigavel-com-php/