Ir para conteúdo

POWERED BY:

Arquivado

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

Leandromx

para apagar arquivo com Unlink

Recommended Posts

Oi Pessoal, a treta é a seguinte...

Estou apagando do meu banco o registro da imagem mas preciso apagar o arquivo da pasta tbm..

 

Tentei até onde meus pouquissimos conhecimentos conseguiram...

Tentei usar o unlink mas não consegui..

 

abaixo o código

if ((isset($_GET['idFoto'])) && ($_GET['idFoto'] != "")) {  $deleteSQL = sprintf("DELETE FROM galeria_fotos WHERE idFoto=%s",					   GetSQLValueString($_GET['idFoto'], "int"));  mysql_select_db($database_cnSindicato, $cnSindicato);  $Result1 = mysql_query($deleteSQL, $cnSindicato) or die(mysql_error());  $deleteGoTo = "listar.fotos.php";  if (isset($_SERVER['QUERY_STRING'])) {	$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";	$deleteGoTo .= $_SERVER['QUERY_STRING'];  }  header(sprintf("Location: %s", $deleteGoTo));}?>

Tentei iserir o unlink

 

$caminho= "fotos";

$fotoapagar = $_FILES['foto']['name'];

unlink("$caminho/$fotoapagar");

 

 

não foi tbm...

Poderia dar essa ajuda...

o código esta funcionando só falta apagar a imagem da pasta..

Ah antes que alguem diga dê permissão, eu já fiz isso...E nada tbm...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa David

 

Segue o erro

 

Warning: unlink(fotos/) [function.unlink]: Permission denied in D:\web\sindicato\excluir.foto.php on line 35Warning: Cannot modify header information - headers already sent by (output started at D:\web\sindicato\pcontrole\excluir.foto.php:35) in D:\web\sindicato\pcontrole\excluir.foto.php on line 46

linha 46 tem isso

header(sprintf("Location: %s", $deleteGoTo));

 

Testei local (compartilhei a pasta) e testei na net.. com a permissão...

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara eu tive o mesmo probelam, esse cod eh do dreamweaver, acontece o seguinte, para fazer o formulario de delecao, você primieor faz um recordset selecionando o arquivo por um filtro de sua escoha ,ok?depois pegue o caminho do arquivo e faça o unlink, agora q você deleta ele do banco de dados,ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá leandro

tenta assim, pois é desta forma que estou fazendo neste momento.

 

PHP
$fotoapagar = $_POST["foto"];

unlink($fotoapagar);

sendo que o local de onde vem este form é um campo input type="checkbox" name="foto"

 

$caminho= "fotos";

$fotoapagar = $_FILES['foto']['name'];

unlink("$caminho/$fotoapagar");

abras...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Problema é que ele não esta vindo de um form e sim uma passagem de ID metodo GET E não deu certo ainda..Puts que doidera..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Galera,

Tentei todos os jeitos que vcs me disseram, não foi, sinceramente não sei aonde eu estou errando..

o Código funciona.. só não esta pagando da pasta.

 

Vou postar meu código inteiro....e depois o erro que esta dando..

 

Página

 

<?php require_once('../conexao/rsConectaDemo.php'); ?><?phpfunction GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") {  $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;  switch ($theType) {	case "text":	  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";	  break;		case "long":	case "int":	  $theValue = ($theValue != "") ? intval($theValue) : "NULL";	  break;	case "double":	  $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";	  break;	case "date":	  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";	  break;	case "defined":	  $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;	  break;  }  return $theValue;}if ((isset($_GET['ft_id'])) && ($_GET['ft_id'] != "")) {  $deleteSQL = sprintf("DELETE FROM fotos WHERE ft_id=%s",					   GetSQLValueString($_GET['ft_id'], "int"));$caminho= "../fotos/fotos";$fotoapagar = $_FILES['foto']['name'];unlink("$caminho/$fotoapagar");  mysql_select_db($database_rsConectaDemo, $rsConectaDemo);  $Result1 = mysql_query($deleteSQL, $rsConectaDemo) or die(mysql_error());  $deleteGoTo = "listar.fotos.php";  if (isset($_SERVER['QUERY_STRING'])) {	$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";	$deleteGoTo .= $_SERVER['QUERY_STRING'];  }  header(sprintf("Location: %s", $deleteGoTo));}$colname_rsListar = "-1";if (isset($_GET['ft_id'])) {  $colname_rsListar = (get_magic_quotes_gpc()) ? $_GET['ft_id'] : addslashes($_GET['ft_id']);}mysql_select_db($database_rsConectaDemo, $rsConectaDemo);$query_rsListar = sprintf("SELECT * FROM fotos WHERE ft_id = %s", $colname_rsListar);$rsListar = mysql_query($query_rsListar, $rsConectaDemo) or die(mysql_error());$row_rsListar = mysql_fetch_assoc($rsListar);$totalRows_rsListar = mysql_num_rows($rsListar);?><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body></body></html><?phpmysql_free_result($rsListar);?>

Agora o erro

 

Warning: unlink(../fotos/fotos/) [function.unlink]: Is a directory in /home/agenciad/public_html/sitedemo/pcontrole/excluir.foto.php on line 37Warning: Cannot modify header information - headers already sent by (output started at /home/agenciad/public_html/sitedemo/pcontrole/excluir.foto.php:37) in /home/agenciad/public_html/sitedemo/pcontrole/excluir.foto.php on line 47

Nome da Pasta - fotos

Nome no Bando - foto

Id no Banco - ft_id

 

 

Já coloquei permissão e nada..

 

Sincaremante não sei o que fazer mais....

Podem me dar uma força??

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.