Mostrar conteúdo

Fabriziopt

Power Member
Boas
Tenho um código que desenvolvi mas não está a dar frutos.Está me a dar erros que não compreendo.
O código supostamente via os ficheiros da pasta e mostrava o conteúdo dos .txt.
Passo a citar o código
PHP:
<?php 
$dir = "/home/a6483987/public_html/nc";
$sub = ($_GET['dir']);
$path = '/home/a6483987/public_html/nc';
$path = $path . "$sub";
$dh = opendir($path);
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
            if (substr($file, -4, -3) =="."){
           $ler = fopen("$file","r");
     while(($a=fgets($ler,1000)) !=false){
     echo $a ;
     }
     fclose($ler);
            }else{            
        echo " <a href='?dir=$sub/$file'><font face=candara color=#CCCCCC>$file</font></a><br />";
          }
    }
}
closedir($dh);
?>

Alguém me ajuda a resover esta questão?
Abraço ;)
 
Boas,

Convinha saber quais são os erros que te está a dar...

Há algumas coisas que chamam a atenção no teu código:

PHP:
$dir = "/home/a6483987/public_html/nc";
$sub = ($_GET['dir']);
$path = '/home/a6483987/public_html/nc';
$path = $path . "$sub";

Estás a passar correctamente $sub através de um formulário?
$dir e $ são mesmo iguais?

PHP:
if (substr($file, -4, -3) =="."){

Para que serve isto?
Se retirares essa condição já funciona?
 
Sem saber que erros te está a dar não é fácil. Acrescenta echo's ou die()'s para ajudar no debug.
Por exemplo:
PHP:
 $ler = fopen("$file","r") or die('Não foi possível abrir o ficheiro '.$file);
 
XD tens razão são estes:
Warning: fopen(ola.txt) [function.fopen]: failed to open stream: No such file or directory in /home/a6483987/public_html/nc.php on line 20

Warning: fgets(): supplied argument is not a valid stream resource in /home/a6483987/public_html/nc.php on line 21

Warning: fclose(): supplied argument is not a valid stream resource in /home/a6483987/public_html/nc.php on line 24
 
Quer dizer que não existe nenhum ficheiro "ola.txt" na directoria que foste procurar.
Se achas que existe e não sabes porque é que não encontra, experimenta fazer um echo $file ou die($file) antes do fopen() para saberes ao certo o ficheiro que ele está a tentar abrir.
 
Back
Topo