Apagar arquivos de uploads, não excluir

Banco de dados mysql, em um registro existe outra tabela igual 1:n (tipo venda_itens, de pedido),

  • Tipo do Dado (documento(nome de Arquivo);

  • Local onde fica, no subdiretorio /[cli_codigo1]; (cria a pasta com o id, do cliente);

  • o usuários faz vários uploads tipo de arquivos diferente;

    O detalhe é o seguinte:
    Se o usuário excluir o registro pai, e estar em cascata os registros
    filho, excluir corretamente. Porém os arquivos fica dentro da pasta. Exemplo:
    foi excluído o registro 00010, beleza.
    mas dentro da pasta 00010, fica os arquivos.

                               Como faço para excluir os arquivos ou diretorio 00010?
                               
                               Qual melhor opção?
    

Obrigado, aguardo

Leão

Leão,

Use a função PHP unlink :

unlink("[cli_codigo1]");

Leandro, obrigado,
Veja só a tabela pode ter vários arquivos, é uma tabela de 1 para n:
como faço, em php, teria que fazer um loop.

Obrigado,
Leão

Leão,

Com a função UNLINK, você vai deletar todos os arquivos que estão dentro do diretório e o diretório também.

Como vc faria isso:

Criaria um campo com link para deletar, criaria uma aplicação Blank e na aplicação blank crie a rotina de exclusão do banco e os arquivos do diretório.

Mais tarde te dou uma exemplo completo.

Leandro

Leandro, obrigado e aguardo.

Leão

Aguardando…

Leia exemplo: http://www.scriptcasebrasil.com.br/forum/showthread.php?tid=53&pid=137#pid137

Existe no sc(bibliotecas), essa função para excluir diretório:
deldir.php - excluir diretório

0| <?php
1|
2| function deldir($dir) {
3| $dh=opendir($dir);
4| while ($file=readdir($dh)) {
5| if($file!="." && $file!="…") {
6| $fullpath=$dir."/".$file;
7| if(!is_dir($fullpath)) {
8| unlink($fullpath);
9| } else {
10| deldir($fullpath);
11| }
12| }
13| }
14|
15| closedir($dh);
16|
17| if(rmdir($dir)) {
18| return true;
19| } else {
20| return false;
21| }
22| }
23| ?>

[ Detalhes ]***
No evento OnafterDelete
Localmente em desenvolvimento funciona perfeitamente.(excluir os arquivos realizados
via upload e deleta a pasta).

$diretorio=rtrim({cli_codigo});
deldir(“C:/Arquivos de programas/NetMake/v5/wwwroot/scriptcase/file/doc/$diretorio”);

Ao publicar informa que não encontra o diretorio.

informei dessa maneira e não dar certo:
deldir(“C:/Apache/Apache2/htdocs/prod_scriptcase/file/doc/$diretorio”);

informei dessa maneira e não dar certo:
deldir("/public_html/pilar/_lib/file/doc/$diretorio");

Alguém já passou pelo esse deserto, e pode ajudar.

obrigado,
Leão

Olá Leandro… quanto a este exemplo tem ainda a possibilidade de disponibilizar?