Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

slotos

$_SERVER['REQUEST_URI'] com URL amigavel

Recommended Posts

Boa noite galera, estou fritando meu cérebro á um tempo, e acho que o problema seria na URL amigavel.

Vejam se já se passaram por isso.

 

Tenho um Session iniciada que salva a url em que o usuario esta no momento utilizando o REQUEST_URI, porem de alguma forma que nao entendo o porque, se em minha página tiver um link se quer quebrado, podendo ser css, js, imagem, qualquer coisa, na hora de salvar no banco de dados, ele salva o caminho desse link quebrado exemplo:

 

Eu estou acessando o site www.google.com.br/fotos, o request_uri teria que vir /fotos/ até ai tudo certo, dando um var_dump na página aparece corretamente a url, porém na hora de salvar no banco de dados está salvando o caminho do link ignorando a uri setada.

exemplo:

na minha pagina tem o seguinte <img src="img/logo.png"> porem a imagem dessa logo nao existe, podendo ser tbm um <link de css,

 

na hora que cadastra a uri, que teria que ser /fotos, salva /img/logo.png.

 

alguém já passou por isso?

 

Eu estava testando umas coisas e vi que isso só occorre qnd o mod_rewrite esta ativdado para URL amigaveis

o meu htaccess está da seguinte maneira

 

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1
eu não sei mais o que posso estar fazendo alguém já passou por essa situação?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O seu .htaccess está redirecionando TODOS os acessos pra sua index.php, que recebe a URL via GET e aí deve fazer o redirecionamento correto. Talvez o problema seja justamente isso. Tente aprimorar as suas URLs amigáveis com códigos mais específicos.

 

Por exemplo:

RewriteRule ^minha-pagina/?$ /pagina1.php [NC,L]

Dessa forma, quando a pessoa acessar www.meusite.com/minha-pagina, na verdade ela estaria acessando www.meusite.com/pagina1.php. E assim por diante. Se quiser, pode criar um coringa pra automatizar determinadas áreas do site. Num e-commerce, por exemplo, se pode utilizar isso:

RewriteRule ^camisa/([a-zA-Z_-]+)$ /camisa/index.php?cor=$1 [NC,L]

Dessa forma, quando a pessoa acessar www.meusite.com/camisa/branca, seria a mesma coisa que se ela estivesse acessando www.meusite.com/camisa/index.php?cor=branca.

 

Enfim, tente melhorar as suas URLs amigáveis, provavelmente é esse o seu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Era basicamente isso.

 

Com uma ajuda de um grande amigo, consegui descifrar.

 

Suponhamos que temos uma página que ao carregada ja execute um INSERT INTO no banco de dados, com essa regra ativada ^(.*)$, se tiver uma imagem ou link css quebrado exemplo <img src="sds.ds"> ele irá criar para cada link quebrado uma linha no banco de dados, e no caso da request_uri, esse link quebrado acabava se tornando a uri.

Obrigado a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.