Ir para conteúdo

POWERED BY:

Arquivado

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

Racha-cuca

[Resolvido] Problema move_upload

Recommended Posts

Galera, to precisando muito da ajuda de vcs!

Fiz um site em php, sou iniciante ainda e ta tudo funcionando enquanto está no localhost, porém quando faço o upload e tento subir uma imagem aparece a seguinte mensagem:

PHP Warning: move_uploaded_file(../fotos/dscf6148.jpg) [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: failed to open stream: Permission denied in E:\home\prleonel\Web\adm\funcao_fotos.php on line 48

PHP Warning: move_uploaded_file() [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: Unable to move 'C:\WINDOWS\Temp\php7F1.tmp' to '../fotos/dscf6148.jpg' in E:\home\prleonel\Web\adm\funcao_fotos.php on line 48

o codigo da pagina funcao_fotos.php é a seguinte:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<?
include "config.php";
$texto = $_POST['texto'];
$link = $_POST['link'];
$enviar_imagem = $_POST['enviar_imagem'];

if($_GET['funcao'] == "gravar" && $enviar_imagem == "sim" && is_file($_FILES['arquivo']['tmp_name'])){

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

$foto = str_replace(" ", "_", $foto);
$foto = str_replace("ã", "a", $foto);
$foto = str_replace("á", "a", $foto);
$foto = str_replace("à", "a", $foto);
$foto = str_replace("é", "e", $foto);
$foto = str_replace("ê", "e", $foto);
$foto = str_replace("è", "e", $foto);
$foto = str_replace("í", "i", $foto);
$foto = str_replace("ì", "i", $foto);
$foto = str_replace("ó", "o", $foto);
$foto = str_replace("õ", "o", $foto);
$foto = str_replace("ç", "c", $foto);

$foto = strtolower($foto);

if(!eregi("^image\/(jpeg|png|gif|pjpeg|jpg)$", $_FILES['arquivo']['type'])){

	echo "
	<META HTTP-EQUIV=REFRESH CONTENT='0; URL=index.php?pg=fotos'>
	<script type=\"text/javascript\">
	alert(\"Formato inválido\");
	</script>
	";

}else{

	if(file_exists("../fotos/$foto")){
		$a = 1;
		while(file_exists("../fotos/[$a]$foto")){
			$a++;
		}

		$foto = "[".$a."]".$foto;

	}

	if(!move_uploaded_file($_FILES['arquivo']['tmp_name'], "../fotos/".$foto)){

		echo "
	<META HTTP-EQUIV=REFRESH CONTENT='0; URL=index.php?pg=fotos'>
	<script type=\"text/javascript\">
	alert(\"Erro ao enviar o arquivo.\");
	</script>
	";

	}

}

	$sql = mysql_query("INSERT INTO fotos (texto,foto,link) value ('$texto','$foto','$link')");
	header("Location: index.php?pg=fotos");

}

if($_GET['funcao'] == "gravar" && $enviar_imagem != "sim" && !is_file($_FILES['arquivo']['tmp_name'])){

$sql = mysql_query("INSERT INTO fotos (texto, link) value ('$texto','$link')");
	header("Location: index.php?pg=fotos");

}

//*********************************************************************

if($_GET['funcao'] == "alterar" && $enviar_imagem == "sim" && is_file($_FILES['arquivo']['tmp_name'])){

$id = $_GET['id'];
$sql_alt = mysql_query("SELECT * FROM fotos WHERE id = '$id'");
while($linha = mysql_fetch_array($sql_alt)){
	$foto_db = $linha['foto'];
}

	unlink("../fotos/$foto_db");



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

$foto = str_replace(" ", "_", $foto);
$foto = str_replace("ã", "a", $foto);
$foto = str_replace("á", "a", $foto);
$foto = str_replace("à", "a", $foto);
$foto = str_replace("é", "e", $foto);
$foto = str_replace("ê", "e", $foto);
$foto = str_replace("è", "e", $foto);
$foto = str_replace("í", "i", $foto);
$foto = str_replace("ì", "i", $foto);
$foto = str_replace("ó", "o", $foto);
$foto = str_replace("õ", "o", $foto);
$foto = str_replace("ç", "c", $foto);

$foto = strtolower($foto);

if(!eregi("^image\/(jpeg|png|gif|pjpeg|jpg)$", $_FILES['arquivo']['type'])){

	echo "
	<META HTTP-EQUIV=REFRESH CONTENT='0; URL=index.php?pg=fotos'>
	<script type=\"text/javascript\">
	alert(\"Formato inválido\");
	</script>
	";

}else{

	if(file_exists("../fotos/$foto")){
		$a = 1;
		while(file_exists("../fotos/[$a]$foto")){
			$a++;
		}

		$foto = "[".$a."]".$foto;

	}

	if(!move_uploaded_file($_FILES['arquivo']['tmp_name'], "../fotos/".$foto)){

		echo "
	<META HTTP-EQUIV=REFRESH CONTENT='0; URL=index.php?pg=fotos'>
	<script type=\"text/javascript\">
	alert(\"Erro ao enviar o arquivo.\");
	</script>
	";

	}

}

	$sql = mysql_query("UPDATE fotos SET texto = '$texto', foto='$foto', link='$link' where id = '$id'");
	header("Location: index.php?pg=fotos");

}

if($_GET['funcao'] == "alterar" && $enviar_imagem != "sim" && !is_file($_FILES['arquivo']['tmp_name'])){
$id = $_GET['id'];
$sql = mysql_query("UPDATE fotos SET texto = '$texto', link='$link' where id = '$id'");
	header("Location: index.php?pg=fotos");

}

//***************************************

if($_GET['funcao'] == "excluir"){
$id = $_GET['id'];
$sql = mysql_query("DELETE FROM fotos WHERE id = '$id'");
header("Location: index.php?pg=fotos");
}

?>

 

Alguem pode me ajudar???

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa dar permissão de escrita na pasta q vai receber.

 

como o servidor é windows, você deve setar essa permissão via painel de controle.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual é a sua hospedagem ?

 

e como você deu o 777 ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ao q parece, o erro diz q eh problema de permissao, mas em se tratando de windows, este lance de permissao nao se da em cliente ftp, tem de ser no painel de controle, outra coisa, a pasta existe?....

 

você esta usando caminho relativo

 

../fotos/

 

procure usar caminhos absolutos...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

kkkkkkk....a locaweb tem isto escrito na wiki dela...eh so ler...nenhum de seus servidores windows você consegue mudar a permissao via cliente ftp, so pelo painel de controle...se fosse linux era problema resolvido...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, desculpe a ignorancia, mas como faço esta permissao via painel de controle.???.. esta hospedado na locaweb...

 

A permissao seria somente na pasta "fotos", ou em tudo???

 

VOu ver se eu acho e já te falo se deu certo... desde já cara. brigadão mesmo, pois to desde ontem as 13hs da tarde e soh fui dormir as 7 da manha... já tinha mudado quase tudo do site, kkk... já te falo se deu certo,rs

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.