Ir para conteúdo

POWERED BY:

Arquivado

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

Wallacy Araújo

Pegar nome do arquivo querystring

Recommended Posts

Fala galera... tenho uma pagina que tem um include que contem uma query string

o arquivo onde ta o include é o index.php e o padrão da query é destaques.php...

 

<div id="conteudo"><?php include("querystring.php"); ?></div>

 

queria imprimir na tela, FORA DESSA DIV AI, o nome do arquivo destaques.php...

peguei umas coisas na internet, mas todos imprimem index.php e não destaques.php como eu quero...

 

estou usando isso: <?php $pagina = end(explode("/", $_SERVER['PHP_SELF'])); ?>

 

 

alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

deixa eu ver se explico melhor...

 

http://localhost/site/noticias/

 

entrando nesse site que ta no meu localhost eu to tentando mostrar no titulo da página o nome do arquivo. como o arquivo que ta abrindo nesse endereço é o padrão index.php ta aparecendo no meu titulo de página: INDEX....

 

Só que nessa página index, tem um include que mando as páginas por uma querystring, ficando no caso da index.php o padrão que é a destaques.php...

 

eu quero que apareça no título da página DESTAQUES, de destaques.php e não, INDEX, de index.php.

 

entende?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hummm, mais ou menos, rs.

 

Se voce acessa [ http://localhost/site/noticias/?pagina=destaques ], como e um include, seu script continuara mostrando index pois o script ainda e a index.php.

 

O que poderia fazer pra mudar o titulo da pagina?

 

1) Usando javascrit no conteudo interno, chamado pelo include, na destaques.php voce pode mudar o titulo assim:

 

<?php
Echo '<script>document.title = "Seu site - Destaques"</script>';
?>

2) Na index.php, pegando o GET da pagina, tambem com javascipt:

 

<?php
Echo '<script>document.title = "Seu site - '.$_GET['pagina'].'"</script>';
?>

 

E isso? Abraco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

só não por duas coisas...

 

não é o titulo no navegador, e sim na página mesmo no h1! até ai tudo bem... não altera muito!

 

mas vou explicar que já usei o get pra pegar o valor da pagina e da certo...

só que só da certo quando ta na barra de endereço a url com o valor da página...

quando acesso somente http://localhost/site/noticias que abre o script padrão que é o index.php não vai aparecer o valor da pagina porque não tem na barra de endereço...

queria driblar isso...

não queria que dependesse da url pra isso entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok.

Vamos validar o get entao:

 

$Titulo = isSet($_GET['pagina']) && !Empty($_GET['pagina']) ? $_GET['pagina'] : 'Destaques'; // Destaques é o padrao neste caso
Echo '<h1>'.$Titulo.'</h1>';

 

E ai? Funfou? :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

rerere

legal! funfa...

mas acho que to abusando de você!

tipo... eu não queria criar um padrão entende.... se não vou ter que mudar estaticamente esse destaques sempre que criar outras páginas e por padrão destaques não vai estar em todas essas páginas... por isso prefiro que seja lido pelo nome da página que está rodando e não por esses metódos....

enfim.. mas fico grato do mesmo jeito pela ajuda...

se não tiver outra forma com que possa me ajudar, lógico... por favor! rere

abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

quando acesso somente http://localhost/site/noticias que abre o script padrão que é o index.php não vai aparecer o valor da pagina porque não tem na barra de endereço...

queria driblar isso...

rerere

tipo... eu não queria criar um padrão entende.... se não vou ter que mudar estaticamente esse destaques sempre que criar outras páginas e por padrão destaques não vai estar em todas essas páginas... por isso prefiro que seja lido pelo nome da página que está rodando e não por esses metódos....

Agora eu fiquei voando... :lol:

 

Se nao tiver o get, o que quer fazer/exibir?

Compartilhar este post


Link para o post
Compartilhar em outros sites

veja...

dentro da index.php

tenho um include query.php que por padrão vem a destaques.php...

no menu tenho links pra ultimas.php e agenda.php juntamente com destaques.php

 

estou usando neste momento $_SERVER[php_SELF] e ele me da index.php que é o script pai neste caso

 

já fiz o teste antes com a mesma coisa que você me passou com a GET e eu consegui pegar o valor da ?pagina tudo certinha...

mas isso só quando eu clicava nos links do menu... no caso porque quando eu clicava no menu de destaques ele mandava pra URL depois de noticias/ o que correspondia ao link do menu destaques

que era ?pagina=destaques

 

 

mas eu queria um modo de mostrar o nome do arquivo que está abrindo dentro do include e não o nome do arquivo onde está o include....

 

é isso! meio complicado mesmo eu acho! rere

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hummm!

 

Se nao for pelo get, acredito que nao tem como identificar o arquivo que foi incluido, como conteudo no caso.

:( Vamos ver se mais alguem se habilita a ajudar.

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aha! Entendo.

 

Tem algumas dicas nao lembro de todas agora, a medida que for lembrando vou postando.

 

1) Remova caracteres como . e / da variavel $_GET['pagina'], isto evita que um sacana tente achar aquivos do seu servidor. Para isto:

 

$Pagina                      = isSet($_GET['pagina']) ? $_GET['pagina'] : '';
$aRemover                    = Array('.', '/');
$Pagina                      = str_ireplace($aRemover, '', $Pagina);

Supondo que o doc root do site é /home/user/public_html, ao acessar sua $_GET['pagina'] com index.php?pagina=../../home/senhas. Percebeu a falha? O cara pode acessar qualquer dir e assim incluir (e exibir) arquivos que nao deveria ter acesso.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi muito não... mas dê prosseguimento!

 

Pessoal alguém ai pra dar uma luz no problema? ainda não consegui resolver!

se alguém puder dar uma força, agradeço!

 

quero pegar o nome do arquivo que vem do include que ta na página! simples! rerere

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.