Ir para conteúdo

POWERED BY:

Arquivado

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

tomwp

[Resolvido] No such file or directory

Recommended Posts

Olá Comunidade...estou aqui com um problema no codigo...preciso fazer uma parte que exclua as coisas da pasta e talz...e toda vez que eu ponho pra excluir da esse erro aqui em baixo..esses 2:

 

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/tomwp/public_html/resto/d1/restrito/disc_exclui.php on line 24

 

Warning: unlink(mp3\) [function.unlink]: No such file or directory in /home/tomwp/public_html/resto/d1/restrito/disc_exclui.php on line 32

Registro excluido com sucesso!

 

e eu ja liberei o chmod 777...etc e nao vai...o codigo está assim:

 

<?

require_once('conexao.php');

// antes de excluir o registro, você deve excluir a foto do servidor

// ex:

$rset = mysql_query("Select nome from musica where idmusica = $id");

while ($linha = mysql_fetch_assoc($rset))

$nome = $linha["nome"];

 

$diretorio = 'mp3\\'; // Depois você coloca o seu diretorio correto. Este diretório poderia estar dentro do arquivo conexao.php (para ficar dinamico)

 

$arquivo = $diretorio.$nome; // diretorio + o nome do arquivo/foto

 

if (isset($arquivo))

unlink($arquivo); // exclui o arquivo do servidor

 

// na sequencia exlui o registro

$sql = "DELETE FROM musica WHERE idmusica = $id";

$rset = mysql_query($sql);

echo "Registro excluido com sucesso! ";

?>

oque tem de errado nesse codigo?

a linha 24 que ele diz é essa:

while ($linha = mysql_fetch_assoc($rset))

 

e a linha 32 que ele diz é essa:

unlink($arquivo);

 

Obrigado desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ou não precisa daquele while lá em cima, ou você precisa abrir e fechar ele.

 

Das duas, uma.

 

[]'s http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

certo Paulo...tirei aquela linha do while...mas mesmo assim da erro no unlink e nao exclui o arquivo da pasta e nem do banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao exclui do db pq a primeira parte do script nao eh concluida......q genio eu sou....

 

 

mas o while eh valido, porem, da um echo na sua variavel $nome, pra ver se ela esta com o nome correto no arquivo q você ker excluir, mas veses so tem o nome parcial da path do arquivo........

 

e na variavel $diretorio, você colocou o nome com 2 barras, assim ele nuca vai achar o arquivo...

 

verifica esses erros, se funfar ou nao você postae depois...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao exclui do db pq a primeira parte do script nao eh concluida......q genio eu sou....

 

 

mas o while eh valido, porem, da um echo na sua variavel $nome, pra ver se ela esta com o nome correto no arquivo q você ker excluir, mas veses so tem o nome parcial da path do arquivo........

 

e na variavel $diretorio, você colocou o nome com 2 barras, assim ele nuca vai achar o arquivo...

 

verifica esses erros, se funfar ou nao você postae depois...

mas tem q ser 2 barras...se for uma só o resto do codigo nao funciona...testa ai pra voce ver..o resto do codigo fica tudo dentro da aspas do mp3...por isso que ta 2 barras ali.

 

e nao ta funcionando ainda http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

require_once('conexao.php');
// antes de excluir o registro, você deve excluir a foto do servidor
// ex:
$rset = mysql_query("Select nome from musica where idmusica = $id");
$linha = mysql_fetch_assoc($rset);
$nome = $linha["nome"];

$diretorio = 'mp3\\'; // Depois você coloca o seu diretorio correto. Este diretório poderia estar dentro do arquivo conexao.php (para ficar dinamico)

$arquivo = $diretorio.$nome; // diretorio + o nome do arquivo/foto

if (isset($arquivo))
unlink($arquivo); // exclui o arquivo do servidor

// na sequencia exlui o registro
$sql = "DELETE FROM musica WHERE idmusica = $id";
$rset = mysql_query($sql);
echo "Registro excluido com sucesso! ";

?>

Foi isso ai que você fez? :huh:

 

Se não foi, tente este código ai.

 

Faça um teste para comprovar a existência deste caminho mesmo, use a função file_exists() para isto.

 

[]'s http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

require_once('conexao.php');
// antes de excluir o registro, você deve excluir a foto do servidor
// ex:
$rset = mysql_query("Select nome from musica where idmusica = $id");
$linha = mysql_fetch_assoc($rset);
$nome = $linha["nome"];

$diretorio = 'mp3\\'; // Depois você coloca o seu diretorio correto. Este diretório poderia estar dentro do arquivo conexao.php (para ficar dinamico)

$arquivo = $diretorio.$nome; // diretorio + o nome do arquivo/foto

if (isset($arquivo))
unlink($arquivo); // exclui o arquivo do servidor

// na sequencia exlui o registro
$sql = "DELETE FROM musica WHERE idmusica = $id";
$rset = mysql_query($sql);
echo "Registro excluido com sucesso! ";

?>

Foi isso ai que você fez? :huh:

 

Se não foi, tente este código ai.

 

Faça um teste para comprovar a existência deste caminho mesmo, use a função file_exists() para isto.

 

[]'s http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

sim Paulo e continua dando as duas mensagens de erro que dava. e nao exclui tbm http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fez o debug que sugeri? Usando a função file_exists()?

sim Paulo...e mostra que existe ai vai o codigo...só que mostra assim oh:

 

O arquivo mp3\ existe

e nao mostra o nome da musica que está dentro dessa pasta.

 

<?php

require_once('conexao.php');

// antes de excluir o registro, você deve excluir a foto do servidor
// ex:
$rset = mysql_query("Select nome from musica where idmusica = $id");
$linha = mysql_fetch_assoc($rset);
$nome = $linha["nome"];

$diretorio = 'mp3\\'; // Depois você coloca o seu diretorio correto. Este diretório poderia estar dentro do arquivo conexao.php (para ficar dinamico)


$arquivo = $diretorio.$nome; // diretorio + o nome do arquivo/foto


if (file_exists($arquivo)) {
	print "O arquivo $arquivo existe";
} else {
	print "O arquivo $arquivo não existe";
}

if (isset($arquivo))
unlink($arquivo); // exclui o arquivo do servidor

// na sequencia exlui o registro
$sql = "DELETE FROM musica WHERE idmusica = $id";
$rset = mysql_query($sql);
echo "Registro excluido com sucesso! ";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara... uma dica é você naum usar a barra \, e sempre usar a barra /.

se você usar essa \, seu script vai rodar nos servidores Windows com o incomodo de sempre ter que usar \\, e naum vai rodar nos servidores Linux...

se você usar essa /, seu script ira rodar tanto nos servers Linux quanto nos Windows...

 

tbm existem alguns erros bestas q acontencem quando se usa a \...

ai fica a dica de quem ja apanhou muito em PHP - haushaushauhs

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ae Comunidade!

Topico resolvido

já deu certo aqui essa programacao graças ao Dórian Conde Langbeck...ele está me ajudando bastante nessa programacao entao gostaria de deixar meus votos aqui nele!

 

Obrigado tambem ao Paulo André e Igor.php.

Compartilhar este post


Link para o post
Compartilhar em outros sites

todos sabem q o certo para indicar diretorio eh sempre / no proprio manual tem isso, ou você nunca o leu?

mas nao foi soh a questao da "/" igor...tem muitos outros erros fora esse q o Dorian me ajudou!..

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.