helioh3
(usa Debian)
Enviado em 24/09/2013 - 03:19h
Cássio e Diego, desculpas pela demora...
Meu diretorio:
http://i535.photobucket.com/albums/ee351/helioh3/estruturadediretorios.jpg
O arquivo htaccess. que contém a varial $url que você estava com dúvida Cássio:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1
A minha função:
function getHome(){
$url = $_GET['url'];
$url = explode('/', $url);
$url[0] = ($url[0] == NULL ? 'index' : $url[0]);
if(file_exists('tpl/'.$url[0].'.php')){
require_once('tpl/'.$url[0].'.php');
}elseif(file_exists('tpl/'.$url[0].'/'.$url[1].'.php')){
require_once('tpl/'.$url[0].'/'.$url[1].'.php');
}else{
require_once('tpl/404.php');
}
}
busca essa variavel: e adiciona no meu diretório principal a pasta 'tpl/' ficando assim:
www.meusite.com.br/tpl/
Veja:
http://i535.photobucket.com/albums/ee351/helioh3/tpl.jpg
Ou seja, quando coloco um arquivo fora do diretório do meu site, consigo recuperar valores normalmente, como fiz com o teste que vc me mandou veja:
http://i535.photobucket.com/albums/ee351/helioh3/testephp.jpg
Agora quando eu coloco o arquivo no meu 'tpl/', que é onde tá o arquivo de leitura do diretório:
http://i535.photobucket.com/albums/ee351/helioh3/arquivoleituradediretorio.jpg
<title><?php echo SITENAME ;?></title>
<meta name="language" content="pt-br" />
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="description" content="<?php echo SITEDESC ;?>" />
<meta name="keywords" content="<?php echo SITETAGS;?>" />
<meta name="author" content="APPSTUDIO" />
<meta name="url" content="<?php echo BASE;?>" />
<meta name="robots" content="INDEX,FOLLOW" />
</head>
<div id="contener">
<?php
setArq('tpl/header');
?>
<div id="content">
<div class="transparencia">
<div class="logo">
<a href="#"><img src="<?php setHome();?>/tpl/transparencia/images/logo.png" alt="Logo" title="Portal Transparência" border="0"></a>
</div>
<div class="intro">
<p>O Portal Transparência é um canal pelo qual o cidadão pode acompanhar os gastos realizados diretamente pelo Poder Legislativo. Os registros existentes no Portal da Transparência serão permanentemente atualizados.</p>
<p>A atual gestão vem adotando diversas medidas para informatizar a instituição e possibilitar a geração de informações detalhadas, que atendam aos preceitos de lisura e transparência com as finanças públicas da Câmara Municipal de Dianópolis.</p>
</div>
<?php
$dir = $_GET['dir'];
$baseDir = 'uploads/arquivos/';
$abreDir = ($_GET['dir'] != '' ? $_GET['dir'] : $baseDir );
$openDir = dir($abreDir);
$strrdir = strrpos(substr($abreDir,0, -1),'/');
$voltaDir = substr($abreDir,0,$strrdir+1);
while($arq = $openDir -> read()):
if($arq != '.' && $arq != '..'):
if(is_dir($abreDir.$arq)){
//diretorios
echo'<div class="lista">';
echo'<div class="ico"><img src="'.BASE.'/tpl/transparencia/images/ico-folder.png" border="0"></div>';
echo'<h2>'.$arq.'</h2>';
echo' <h4><a href="home?dir='.$abreDir.$arq.'/">Abrir</a></h4>';
echo'</div>';
}else{
//arquivos
echo'<div class="lista">';
echo'<div class="ico"><img src="'.BASE.'/tpl/transparencia/images/ico-pdf.png" border="0"></div>';
echo'<h2>'.$arq.'</h2>';
echo' <h4><a href="'.$abreDir.$arq.'">Visualizar</a></h4>';
echo'</div>';
}
endif;
endwhile;
if($abreDir != $baseDir){
echo'<a href="home&home?dir='.$voltaDir.'">Voltar</a>';
}
$openDir ->close();
?>
<div class="texto">
<p>Os arquivos estão em formato PDF. O programa para visualizar este tipo de documento é o Adobe Reader. Baixe gratuitamente clicando no botão abaixo:</p>
<a href="http://get.adobe.com/br/reader/" style="border:0" target="_blank" title="Baixar Adobe Reader"><img src="<?php setHome();?>/tpl/transparencia/images/getadobe.png"></a>
</div>
</div>
</div><!--/<CONTENT--></CONTENT-->
<script> alert('<?= $dir; ?>'); </script>
não consigo recuperar os valores como pode ver:
http://i535.photobucket.com/albums/ee351/helioh3/mostrarvaloresjquery.jpg
Será se não é por causa do htaccess que tá recebendo uma recuperação? veja:
RewriteRule ^(.*)$ index.php?url=$1
ele já tá pegando um valor depois de index.php?url=$1 ou seja quando eu adicionar o meu home?dir=qualquercoisa ele terá que adicionar mais um valor ou seja irá passar então dois valores. Será se pode passar mais de dois..?rsrs
Obs. eu tenho que passar desse jeito:
home?dir=qualquercoisa, ao em vês de passar:
home.php?dir.
Seu passar
home.php?dir, dá erro por que a função já tá incluindo arquivos .php
Cássio e Diego, pela ajudar.