Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

twpesquisa

Excluir arquivos

Recommended Posts

Caros amigos,

estou com uma dúvida:

tenho um sisteminha de upload onde ao enviar o arquivo o mesmo salva o caminho em uma tabela.

Gostaria de saber como faço para excluir o arquivo do servidor quando eu excluir o registro da tabela.

http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como eu faria para excluir o arquivo do servidor e o registro do banco de dados?

Terias como me ajudar ???

 

Obrigado.

 

 

unlink('arquivo');

 

abraço =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deu certo...

veja a minha função:

function exc_manual($cod)

{

$query = "DELETE

FROM upload

WHERE cod = '$cod'";

$result = mysql_query($query) or die ("Error in query: $query. " .mysql_error());

unlink($arquivo);

echo "<script>alert('ARQUIVO EXCLUÍDO COM SUCESSO')</script>

<script>window.location='deletar.php';</script>";

}

O arquivo está no seguinte caminho:

http://intranet.com.br/_area_teste/upload/arquivo/$arq

 

será que fiz certo ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como é que eu faço então, quando eu deletar um registro da tabela ser excluido a arquivo que estiver vinculado ao registro ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deu certo...Minha tabela tem as seguinte colunas:cod | arquivo | nome | desc cod = autoincrementalarquivo = guarda o caminhonome = define apenas um nomedesc = descrição do arquivo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como esta sendo salvo a imagem no seu bd?pasta/imagem.jpgou apenasimagem.jpgpode ser isso que esta dando erro, ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?//conecta no bancoinclude("conexao.php");$sql = "SELECT * FROM upload";$query = mysql_query($sql);$i = 1;echo"<table width='100%' border='1' align='center' cellpadding='0' cellspacing='0'>";echo"<tr align='center' valign='middle' class='tabFormBody'>";echo"<td width='2%' height='20'><div align='center'></div></td>";echo"<td width='15%' height='20'><div align='center'>NOME DO DOCUMENTO </div></td>";echo"<td width='55%' height='20'><div align='center'>DESCRIÇÃO</div></td>";echo"<td width='10%' height='20'><div align='center'>INSERIDO POR </div></td>";echo"<td width='12%' height='20'><div align='center'>DATA INCLUSÃO </div></td>";echo"</tr>";while($row = mysql_fetch_array($query)) { $cod = $row["cod"]; $arquivo = $row["arquivo"]; $nom = $row["nome"]; $des = $row["desc"]; $setor = $row["setor"]; $data = $row["data"]; // Altenar a cor de Fundo da linha da Tabela if (($i % 2) == 1) { $fundo="#FAF0E6"; } else { $fundo="white"; } $i++; echo "<tr bgcolor=$fundo align='center' valign='middle'> <td height='20'><div align='center'><a href=\"?action=exc_manual&cod={$row['cod']}\"><img src='img/excluir.gif'></a></div></td> <td height='20'><div align='center'>$nom</div></td> <td height='20'>$des</td> <td height='20'><div align='center'>$setor</div></td> <td height='20'><div align='center'>$data</div></td> </tr>"; } echo"</table>";function exc_manual($cod) { $query = "SELECT arquivo FROM upload where cod='$cod'"; $result = mysql_query($query) or die ("Error in query: $query. " .mysql_error()); $nome_arquivo = mysql_fetch_row($result); $query = "DELETE FROM upload WHERE cod = '$cod'"; $result = mysql_query($query) or die ("Error in query: $query. " .mysql_error()); $link = unlink($nome_arquivo); if ($result && $link) { echo "<script>alert('ARQUIVO EXCLUÍDO COM SUCESSO')</script> <script>window.location='deletar.php';</script>"; } }switch($_GET['action']) { case 'exc_manual': exc_manual($_GET['cod']); break; } ?>Ghean,está sendo salvo pasta/imagen.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

DEU CERTO!!!!!

 

SEGUE ABAIXO O CÓDIGO COMPLETO PARA REALIZAR A EXCLUSÃO DE UM REGISTRO DA TABELA E JUNTO O ARQUIVO QUE ESTÁ NO SERVIDOR, CONFORME O CAMINHO SALVO NA TABELA....

 

<?

//conecta no banco

include("conexao.php");

$sql = "SELECT * FROM upload";

$query = mysql_query($sql);

$i = 1;

echo"<table width='100%' border='1' align='center' cellpadding='0' cellspacing='0'>";

echo"<tr align='center' valign='middle' class='tabFormBody'>";

echo"<td width='2%' height='20'><div align='center'></div></td>";

echo"<td width='15%' height='20'><div align='center'>NOME DO DOCUMENTO </div></td>";

echo"<td width='55%' height='20'><div align='center'>DESCRIÇÃO</div></td>";

echo"<td width='10%' height='20'><div align='center'>INSERIDO POR </div></td>";

echo"<td width='12%' height='20'><div align='center'>DATA INCLUSÃO </div></td>";

echo"</tr>";

while($row = mysql_fetch_array($query))

{

$cod = $row["cod"];

$arquivo = $row["arquivo"];

$nom = $row["nome"];

$des = $row["desc"];

$setor = $row["setor"];

$data = $row["data"];

// Altenar a cor de Fundo da linha da Tabela

if (($i % 2) == 1)

{ $fundo="#FAF0E6"; }

else

{ $fundo="white"; }

$i++;

 

echo "<tr bgcolor=$fundo align='center' valign='middle'>

<td height='20'><div align='center'><a href=\"?action=exc_manual&cod={$row['cod']}\"><img src='img/excluir.gif'></a></div></td>

<td height='20'><div align='center'>$nom</div></td>

<td height='20'>$des</td>

<td height='20'><div align='center'>$setor</div></td>

<td height='20'><div align='center'>$data</div></td>

</tr>";

}

echo"</table>";

function exc_manual($cod)

{

$query = "SELECT arquivo FROM upload where cod='$cod'";

$result = mysql_query($query) or die ("Error in query: $query. " .mysql_error());

$nome_arquivo = mysql_fetch_row($result);

 

$query = "DELETE FROM upload WHERE cod = '$cod'";

$result = mysql_query($query) or die ("Error in query: $query. " .mysql_error());

$link = unlink($nome_arquivo[0]);

 

if ($result && $link)

{

echo "<script>alert('ARQUIVO EXCLUÍDO COM SUCESSO')</script>

<script>window.location='deletar.php';</script>";

}

}

switch($_GET['action'])

{

case 'exc_manual':

exc_manual($_GET['cod']);

break;

}

 

?>

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

dei uma mexida na função.. olha ai se funciona:

 

function exc_manual($cod){	$sql_seleciona_arquivo = "SELECT arquivo FROM upload where cod='$cod'";	$query_seleciona_arquivo = mysql_query($sql_seleciona_arquivo) or die ("Error in query: $query. " .mysql_error());	$dados_seleciona_arquivo = mysql_fetch_row(query_seleciona_arquivo);	// NOME DO ARQUIVO A SER APAGADO	$nome_arquivo_apagar = $dados_seleciona_arquivo["arquivo"];		$sql_deleta_registro = "DELETE FROM upload WHERE cod = '$cod'";	$query_deleta_registro = mysql_query($sql_deleta_registro) or die ("Error in query: $query. " .mysql_error());		if ($query_deleta_registro) {		$apagado = unlink($nome_arquivo_apagar);			if ($apagado){			echo "<script>alert('ARQUIVO EXCLUÍDO COM SUCESSO')</script>			<script>window.location='deletar.php';</script>";		}	}	}

respondeu antes ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Darkstar,não funcionou...Ele exclui o registro da tabela, mas não o arquivo do server...

Compartilhar este post


Link para o post
Compartilhar em outros sites

dei uma mexida na função.. olha ai se funciona:

function exc_manual($cod){	$sql_seleciona_arquivo = "SELECT arquivo FROM upload where cod='$cod'";	$query_seleciona_arquivo = mysql_query($sql_seleciona_arquivo) or die ("Error in query: $query. " .mysql_error());	$dados_seleciona_arquivo = mysql_fetch_row(query_seleciona_arquivo);	// NOME DO ARQUIVO A SER APAGADO	$nome_arquivo_apagar = $dados_seleciona_arquivo["arquivo"];		$sql_deleta_registro = "DELETE FROM upload WHERE cod = '$cod'";	$query_deleta_registro = mysql_query($sql_deleta_registro) or die ("Error in query: $query. " .mysql_error());		if ($query_deleta_registro) {		$apagado = unlink($nome_arquivo_apagar);			if ($apagado){			echo "<script>alert('ARQUIVO EXCLUÍDO COM SUCESSO')</script>			<script>window.location='deletar.php';</script>";		}	}	}
respondeu antes ^^
você chamou fetch_row.. e não fetch_array o fetch_row pega o numero da linha em um array... e o fetch_array pega o nome dos campos em um array....corrige isso e vai funcionar... se não tiver outros erros..T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Darkstar,não funcionou...Ele exclui o registro da tabela, mas não o arquivo do server...

cara... perdao.... realmente como o rsddaros disse.. eu coloquei errado o mysql_fetch_row... na linha:
$dados_seleciona_arquivo = mysql_fetch_row(query_seleciona_arquivo);
coloca
$dados_seleciona_arquivo = mysql_fetch_array($query_seleciona_arquivo);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.