Falha de include ao excluir post

27/04/2012

0

PHP

Oi pessoal, estudo com um bug muito estranho aqui, e o seguinte:

Tenho uma lista de posts, quando clico no botão excluir, excluir tudo normal do banco a imagem da pasta, tudo normal, mais acontece o seguinte, após executar esse ação de excluir os includes que ficam abaixo da tabela são “perdido” gerando o seguinte erro:

warning include() function.include failed opening

Alguém tem algua ideia do que pode ser?

Segui o código que faz a exclusão:

<?php if(isset($_POST[excluir]) && $_POST[excluir] == excluir){
    $id = $_POST[id];
        $pegaImg = mysql_query(SELECT categoria, thumb FROM tabela WHERE id = $id); 
        if(@mysql_num_rows($pegaImg) <= 0 ){
            echo <div class=\off\>Erro ao Selecionar posts.</div>  
        }else{
            while($resPegaImg=mysql_fetch_array($pegaImg)){
                    $categoriaExcluir = $resPegaImg[0];
                    $thumbExcluir = $resPegaImg[1];
                        
            chdir(../uploads/imagens/$categoriaExcluir);
            $del = unlink($thumbExcluir);
        
        $deletar = mysql_query(DELETE FROM tabela WHERE id = $id);
        if($deletar >= 1){
            echo <div class=\ok\>Post deletado com sucesso!</div>
        }else{
            echo<div class=\off\>Erro ao remover post</div> 
    }   
   } 
  }
 }
  ?>


Michel Pinto

Michel Pinto

Responder

Posts

13/05/2012

Erackson Brito

Esse erro está acontecendo pelo fato de você estar mudando o diretório atual com a função chdir.

Possível solução:

<?php
if(isset($_POST[excluir]) && $_POST[excluir] == excluir){
$id = $_POST[id];
$pegaImg = mysql_query(SELECT categoria, thumb FROM tabela WHERE id = $id);
if(@mysql_num_rows($pegaImg) <= 0 ){
echo <div class=\off\>Erro ao Selecionar posts.</div>
}else{
$getcwd = getcwd();
while($resPegaImg=mysql_fetch_array($pegaImg)){
$categoriaExcluir = $resPegaImg[0];
$thumbExcluir = $resPegaImg[1];

chdir(../uploads/imagens/$categoriaExcluir);
$del = unlink($thumbExcluir);

$deletar = mysql_query(DELETE FROM tabela WHERE id = $id);
if($deletar >= 1){
echo <div class=\ok\>Post deletado com sucesso!</div>
}else{
echo<div class=\off\>Erro ao remover post</div>
}
}
chdir($getcwd);
}
}
?>

Espero ter ajudado.

[]s
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar