Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal a idéia é tornar o script à prova de adulteração na querystring... se alguem alterar na mão ele vai pra uma página de erro.
Alguem pode me dizer pq não está funcionando corretamente?
Ele não tá colocando na variável $arquivo o array do diretório.
Eis o código:
PHP [/tr][tr]<?##################################################################
//---------- AQUI CPMEÇA A PARTE Q VAI GERAR CONTEÚDO ----------//
$total = count($_GET);
if ($total == 0) {
$_Conteudo = "principal.php";
}
else {
if (!isset($_GET['anopub']) or !isset($_GET['mespub']) or !isset($_GET['materia']) or $total > 3) {
$_Conteudo = "./Conteudo/errodir.php";
}
else {
$ano = $_GET['anopub'];
$mes = $_GET['mespub'];
$cont = $_GET['materia'];
if (!$Diretorio = opendir("./Conteudo/$ano/$mes")) {
$varERRO = 1;
$_Conteudo = "./Conteudo/errodir.php";
}
else {
$varERRO = 0;
/* a parte problemática está aqui
* pela lógica era pra variável $arquivo
* virar um array com o conteúdo
* da pasta que foi aberta. */
$arquivo = readdir($Diretorio);
if (in_array("$cont.php", $arquivo)) {
while (false !== ($arquivo)) {
if ($arquivo != "." && $arquivo != "..") {
if ($arquivo == "$cont.php") {
$_Conteudo = "./Conteudo/$ano/$mes/$arquivo";
}
}
}
}
else {
$_Conteudo = "./Conteudo/errodir.php";
}
}
}
if ($varERRO == 0) {
closedir($Diretorio);
}
}
//---------- FIM DA PARTE QUE GERA O CONTEÚDO ----------//
##########################################################
?>
[/tr]
Carregando comentários...