Acles 0 Denunciar post Postado Novembro 26, 2010 Bem pessoal, tô iniciando meus trabalhos com scripts PHP. Baixei um script já pronto, para estudá-lo e tentar desenvolvê-lo e atualizá-lo, porém na opção de deletar ele falha, simplesmente não deleta. Veja o código da página de exclusão: excluir_vídeo.php <?php include("config.php"); $id_video = $_GET['id']; $nome_video = $_GET['nome']; $nome_foto = $_GET['foto']; if ($id_video != ''){ if (@unlink("videos/$nome_video")) { if (@unlink("fotos/$nome_foto")) { $sql = mysql_query("DELETE FROM videos WHERE videoid = '$id_video'"); header ("location: gerenciar_videos.php?erro=n"); } else { header ("location: gerenciar_videos.php?erro=s"); } } else { header ("location: gerenciar_videos.php?erro=s"); } } else { header ("location: gerenciar_videos.php?erro=s"); } ?> Arquivo gerenciar_video.php: <?php require_once("config.php"); $sql = mysql_query("SELECT * FROM videos order by videoid DESC", $conn); $dados = mysql_fetch_assoc($sql); $rows = mysql_num_rows($sql); $contador = 0; if ($_GET['erro'] == 's'){ echo "<center>Não foi possível completar sua solicitação!</center><p>"; } if ($_GET['erro'] == 'n'){ echo "<center>Registro excluído com sucesso!</center><p>"; } ?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Gerenciar Vídeos</title> <style type="text/css"> <!-- .style1 { color: #FFFFFF; font-weight: bold; } --> </style> </head> <body> <div align="center"> <table width="70%" border="1" cellspacing="2" bordercolor="#000000"> <tr bgcolor="#FF9900"> <td width="288"><div align="center" class="style1">Empresa</div></td> <td width="147"><div align="center" class="style1">Telefone</div></td> <td><div align="center" class="style1">Função</div></td> </tr> <? do { $contador = $contador + 1;?> <tr> <td><div align="center"><? echo $dados['videoempresa']; ?></div></td> <td><div align="center"><? echo $dados['videotel']; ?></div></td> <td width="80"><div align="center"><a href="excluir_video.php?foto=<? echo $dados['videofoto']; ?>&id=<? echo $dados['videoid']; ?>&nome=<? echo $dados['videofile']; ?>"><img src="delete.gif" alt="Excluir" width="16" height="16" border="0"></a></div></td> </tr> <? } while ($dados = mysql_fetch_assoc($sql)); ?> </table> </div> </body> </html> <? mysql_free_result($sql); ?> Arquivo config.php <? $host = "localhost"; $database = "video"; $login_db = "root"; $senha_db = "minhasenha"; $conn = mysql_connect($host, $login_db, $senha_db); mysql_select_db($database, $conn); ?> Banco de dados: CREATE TABLE `videos` ( videoid INT AUTO_INCREMENT, videoempresa VARCHAR (200) not null , videotel VARCHAR (100) not null , videofile VARCHAR (200) not null , videofoto VARCHAR (150) not null , PRIMARY KEY (videoid) ); Script completo Compartilhar este post Link para o post Compartilhar em outros sites
Adson aquino 2 Denunciar post Postado Novembro 27, 2010 Acles, qual o erro que está te retornando? Compartilhar este post Link para o post Compartilhar em outros sites
ozorio silva 0 Denunciar post Postado Novembro 27, 2010 verifica se esta retornando algum erro e posta aqui no forum <?php include("config.php"); echo $id_video = $_GET['id'];//verifica se esta pegando o get do id $nome_video = $_GET['nome']; $nome_foto = $_GET['foto']; if ($id_video != '') { @unlink("videos/$nome_video"); @unlink("fotos/$nome_foto"); $sql = mysql_query("DELETE FROM videos WHERE videoid = '$id_video'") or die(mysql_error());// verifica se esta retornando algum erro nessa query header ("location: gerenciar_videos.php?erro=n"); } else { header ("location: gerenciar_videos.php?erro=s"); } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Acles 0 Denunciar post Postado Novembro 27, 2010 Valeu por responder aí galera, aparece o seguinte: "Não foi possível completar sua solicitação!" Esse erro que tá aparecendo tá no arquivo "gerenciar_videos.php": <?php require_once("config.php"); $sql = mysql_query("SELECT * FROM videos order by videoid DESC", $conn); $dados = mysql_fetch_assoc($sql); $rows = mysql_num_rows($sql); $contador = 0; if ($_GET['erro'] == 's'){ echo "<center>Não foi possível completar sua solicitação!</center><p>"; } if ($_GET['erro'] == 'n'){ echo "<center>Registro excluído com sucesso!</center><p>"; } ?> Não consigo encontrar os erros. Já adicionei o " 'or die(mysql_error())'" e nada.... Compartilhar este post Link para o post Compartilhar em outros sites
RDP 0 Denunciar post Postado Novembro 27, 2010 Sou novo na area também, pelo que entendi o problema está na página excluir_video.php, na funçao unlink() mais detalhes da função unlink() flw Compartilhar este post Link para o post Compartilhar em outros sites
Acles 0 Denunciar post Postado Novembro 27, 2010 Sou novo na area também, pelo que entendi o problema está na página excluir_video.php, na funçao unlink() mais detalhes da função unlink() flw Tá começando bem RDP! Resolveu meu problema, agora tá deletando! hehe Mas... nada é perfeito. Veja o que acontece após deletar: Warning: unlink(video/) [function.unlink]: Permission denied in C:\AppServ\www\painel\tube\excluir_video.php on line 7 Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\painel\tube\excluir_video.php:7) in C:\AppServ\www\painel\tube\excluir_video.php on line 15 excluir_video.php após correção: <?php include("config.php"); $id_video = $_GET['id']; $nome_video = $_GET['file']; $nome_foto = $_GET['foto']; if ($id_video != ''){ if (!unlink("video/$nome_video")) { if (!unlink("fotos/$nome_foto")) { $sql = mysql_query("DELETE FROM videos WHERE videoid = '$id_video'") or die(mysql_error()); header ("location: gerenciar_videos.php?erro=n"); } else { header ("location: gerenciar_videos.php?erro=s"); } } else { header ("location: gerenciar_videos.php?erro=s"); } } else { header ("location: gerenciar_videos.php?erro=s"); } ?> Obrigado amigos! Aguardo resposta! Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Novembro 27, 2010 Assim tipo tem certeza que ali o id_video é uma string? Tem certeza que não deletava porque não tava pegando? Abs Compartilhar este post Link para o post Compartilhar em outros sites
Acles 0 Denunciar post Postado Novembro 27, 2010 Tipo, a ação de deletar num tava pegando justamente pelo erro na função unlink(). Agora deleta normalmente, só tem aquele erro no final! Compartilhar este post Link para o post Compartilhar em outros sites
RDP 0 Denunciar post Postado Novembro 28, 2010 a função unlink ela não aceita receber como parâmetros strings com coringas, por exemplo /pasta/*.txt da uma olhada também como está sendo armazenadas no banco, pois o "erro" acredito que ainda continue na função unlink() Compartilhar este post Link para o post Compartilhar em outros sites
Acles 0 Denunciar post Postado Novembro 29, 2010 a função unlink ela não aceita receber como parâmetros strings com coringas, por exemplo /pasta/*.txt da uma olhada também como está sendo armazenadas no banco, pois o "erro" acredito que ainda continue na função unlink() Beleza, vou estudar mais essa função e vou resolver meu problema, se Deus quiser! haha' Pode colocar RESOLVIDO já, logo meu problema era deletar os videos, e assim foi feito! Obrigado a todos! Abraços! Compartilhar este post Link para o post Compartilhar em outros sites