Ir para conteúdo
Fórum Script Brasil
  • 0

botão deletar


onsguitar

Pergunta

Galera preciso de uma Ajuda

Tenho um Script PHP para listar arquivos de um diretorio

ele mostra o nome do arquivo a extenção e tem a opção para download

imagem.JPG

mais precisava de colocar a opção para deletar arquivo em cada arquivo

o codico esta abaixo

<?php  

       

 function varSet($VAR) { return isset($_GET[$VAR]) ? $_GET[$VAR] : ""; }  

 $action = varSet("action");  

 $pasta = base64_decode(varSet("pasta"));  

    

 //Lista dos arquivos que não serão listados  
 $denyFiles = array(".htaccess","thumbs.db");  

    

 if ($action == "download") {  

     $file = base64_decode(varSet("file"));  

     header("Content-disposition: attachment; filename=\"".basename($file)."\"");  

     readfile(".$file");  

     exit;  
 }  
 ?>  
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  

 <html xmlns="http://www.w3.org/1999/xhtml">  

 <head>  

 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  

 <title>Listagem de Arquivos</title>  

 <style type="text/css">  

 body {  

     font:11px Verdana, Arial, Helvetica, sans-serif;  

     padding:0px;  

    margin:0px;  

 }  
 a {  

     text-decoration:none;  

     color:#003366;  

 }  

 a:hover { color:#0099CC }  

 .row1 { background-color:#F7F7F7 }  

 .row2 { background-color:#EBEBEB }  

 .rowOver { background-color:#C7DCFC }  

 .extCell { font-weight:bold }  

 </style>  

 <script language="javascript" type="text/javascript">  

 function over(Obj) {  

     nClass = Obj.className  

    Obj.className = "rowOver" 

     Obj.onmouseout = function() {  

         Obj.className = nClass  

    }  

 }  

 </script>  

 </head>  

    

 <body>  
 <?php  

 if ($action == ""):  

 $fdir = "./$pasta";  

 chdir($fdir);  

 $dir = opendir(".");  

 while ($file = readdir($dir)) if (is_dir($file)) $dirs[] = $file; else $files[] = $file;  

 $row = 2;  

 ?>  

 <table width="700" border="0" align="center" cellpadding="0" cellspacing="0">  

   <tr>  

     <td height="50px;"> <div align="center">Abra ou fa&ccedil;a o Download dos Arquivos
       Abaixo</div></td>  

   </tr>  

   <tr>  

     <td height="50px;"><strong>Exibindo:</strong> Arquivos <?php echo empty($pasta) ? "" : $pasta; ?></td>  

   </tr>  

 </table>  

 <table width="700" border="0" align="center" cellpadding="0" cellspacing="0">  

   <tr style="font-weight:bold">  

     <td width="55" height="20">&nbsp;</td>  

     <td width="204">Nome</td>  

     <td width="130">Tamanho</td>  

     <td width="316">A&ccedil;&otilde;es</td>  

   </tr>  
 <?php if ($pasta != ""): ?>  

   <tr class="row<?php echo $row; ?>" onmouseover="over(this)">  

     <td align="center" width="55" height="20" class="extCell">[DIR]</td>  

     <td><a href="?pasta=<?php echo base64_encode(substr("$pasta",0,strrpos($pasta,"/"))); ?>">..</a></td>  

     <td>--</td>  

     <td>&nbsp;</td>  
   </tr>  

 <?php endif; ?>  

 <?php  

 if (is_array($dirs)) :  

     sort($dirs);  

     foreach ($dirs as $nome):  

     if ($nome == ".." || $nome == ".") continue;  

     if ($row == 2) $row = 1; else $row = 2;  

 ?>  

   <tr class="row<?php echo $row; ?>" onmouseover="over(this)">  

     <td align="center" width="55" height="20" class="extCell">[DIR]</td>  

     <td><a href="?pasta=<?php echo base64_encode("$pasta/$nome"); ?>"><?php echo $nome; ?></a></td>  
     <td>--</td>  
     <td>&nbsp;</td>  
  </tr>  

 <?php  

     endforeach;  
 endif;  

 ?>  
 <?php  

 if (is_array($files)):  

     sort($files);  

     foreach ($files as $nome):  

     if (in_array(strtolower($nome),$denyFiles)) continue;  

     if ($row == 2) $row = 1; else $row = 2;  

    $tamanho = filesize("./$nome");  
     $info = pathinfo("./$nome");  

 ?>  
   <tr class="row<?php echo $row; ?>" onmouseover="over(this)">  

    <td align="center" width="55" height="20" class="extCell">[<?php echo strtoupper($info["extension"]); ?>]</td>  

     <td>  

 <a href="?action=download&file=<?php echo base64_encode("$pasta/$nome"); ?>"><?php echo $nome; ?></a>  

     </td>  

     <td><?php echo $tamanho > 1048576 ? round($tamanho/1048576,2)." Mb" : round($tamanho/1024,2)." Kb"; ?></td>  

    <td>&nbsp;</td>  

   </tr>  

 <?php  

     endforeach;  

 endif;  
 ?>  
 </table>  
 <?php endif; ?>  
</body>  
 </html>  
 <?php closedir($dir); ?>

Desde já agradeçoo aos amigos desse forum

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
Para excluir um arquivo primeiro verifique se ele exite (função file_exists()) e depois exclua (função unlink())

os arquivos aprarecem por um sistema de upload

uso outro script para listar os arquivos recebidos

e queria nesse script que lista colocar a opção para deletar

valeu

Link para o comentário
Compartilhar em outros sites

  • 0

Fala galera, desculpe estar reavivando este forum mas estou com a mesma dúvida.

Eu não criei nada novo não... juntei alguns scripts para fazer funcionar uma news bem simples, mas também bem funcional.

O sistema é assim... tenho um painel de postagem, ao postar ele cria um arquivo .txt na pasta news, tenho uma pagina que mostra as news e criei uma pagina que mostra os arquivos das news dentro da pasta news do servidor.

A jogada está ai... é nessa pagína que o cara vai poder deletar uma news se quiser... eu já consegui fazer a listagem, já inseri um x em imagem no lado do nome de cada arquivo e criei esta função para deletar o arquivo que planejo chamar por um link... agora vem a dúvida mais idiota... eu não consigo chamar a função pelo link. Outra dúvida idiota que estou também é porque... como eu editei scripts prontos e honestamente sou bem leigo eu não estou conseguido fazer com que a pagina que lista os arquivos txt na pasta news sempre inicie no diretorio news. vocês conseguiram entender!?

O codigo está aqui o:

<?php

function showContent($path){

   if ($handle = opendir($path))
   {
       $up = substr($path, 0, (strrpos(dirname($path."/."),"/")));
       
       while (false !== ($file = readdir($handle)))
       {
       if ($file != "." && $file != "..")
           {
               $fName = $file;
               $file = $path.'/'.$file;
               if(is_file($file)) {
                   echo "<tr><td><img src='style/file2.gif' width='16' height='16' alt='file'/> <a href='".$file."'  target='news_preview'>".$fName."</a> <a href='?=DeleteFile()'><img src='style/images/del.gif' width='12' height='12' border='0' alt='delete'></a></td>"
                            ."<td align='right'>".date ('d-m-Y H:i:s', filemtime($file))."</td>"
                            ."<td align='right'>".filesize($file)." bytes</td></tr>";
               } elseif (is_dir($file)) {
                   print "<tr><td colspan='2'><img src='style/dir2.gif' width='16' height='16' alt='dir'/> <a href='".$_SERVER['PHP_SELF']."?path=$file'>$fName</a></td></tr>";
               }
           }
       }

       closedir($handle);
   }    

}

if (isset($_POST['submitBtn'])){
    $actpath = isset($_POST['path']) ? $_POST['path'] : '.';    
} else {
    $actpath = isset($_GET['path']) ? $_GET['path'] : '.';    
}

function DeleteFile() {

chdir('./news/');
$old = getcwd(); // Save the current directory
    $do = unlink($file);
    if($do=="1"){
        trigger_error("News deletada com sucesso.", E_USER_ERROR);
    } else { trigger_error("Houve um erro ao tentar deletar a news. Talves ela já tenha sido removida.", E_USER_ERROR); }
    chdir($old); } // Restore the old working directory

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
   <title>Micro File Browser</title>
   <link href="style/style_fb.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="main">
      <div class="caption"></div>
<div id="icon2"> </div>
  <div id="result" style="overflow:auto;width:500 px;height: 300 px">
    <table width="100%">
<?php
            showContent($actpath);        
?>

    </table> </div>
    <div align="center">Vizualização da News:<br /></div>
    <div align="center"><iframe frameborder="1" name="news_preview" width="300" height="200"></iframe></div>
  
    <div id="source">Powered by Desaiuno</div>
    </div>
</body>

A pagina é esta aqui:

http://www.clubefiat147.com.br/testes/micr...php?path=./news

Ah... como vocês podem ver para eu acessar o diretorio news preciso do array news...

OBS: gostaria de poder fazer o sort dos arquivos em ordem decrescente... é possível!?

Valeu dimais galera!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...