Jump to content


Photo

Erro Ao Fazer Upload De Imagens


  • Faça o login para participar
11 replies to this topic

#1 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 13:42

É o seguinte, uso esse código em outro site também, e funciona...
Só que agora estou construindo outro site, e não funciona!

Já dei chmod 0777 na pasta e tudo, e não funciona!

O código é o seguinte:

<?php
	include("verificar.php");
	include("../conectar.php");

// inicia criação de pasta
if(!empty($nomedapasta)){
	@mkdir('../eventos/'.$nomedapasta, 0777);
}
// fim da criação da pasta

if(is_dir('../eventos/'.$nomedapasta) && !empty($foto01)){
	$copy = copy($foto01,'../eventos/'.$nomedapasta.'/'.$foto01_name );
	if(!$copy){
		echo 'Erro ao copiar a foto da capa.';
		exit;
	}else{
		mysql_query( 'INSERT INTO `galeria`(`id`,`nome`,`local`,`cidade`,`estado`,`dia`,`mes`,`ano`,`pasta`,`foto01`)
			 		VALUES( NULL, "'.$nome.'", "'.$local.'", "'.$cidade.'", "'.$estado.'", "'.$dia.'", "'.$mes.'", "'.$ano.'", "'.$nomedapasta.'", "'.$foto01_name.'")' ) or die( mysql_error() );
    }
}

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

?>

E o erro:

Warning: copy() [function.copy]: Unable to access Associacao001.jpg in /home/deixe/public_html/admin/eventos_cadastrarbd.php on line 12

Warning: copy(Associacao001.jpg) [function.copy]: failed to open stream: No such file or directory in /home/deixe/public_html/admin/eventos_cadastrarbd.php on line 12
Erro ao copiar a foto da capa.

A linha 12 é essa:
$copy = copy($foto01,'../eventos/'.$nomedapasta.'/'.$foto01_name );

Se alguém puder ajudar eheh

Obrigado!

#2 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 14:55

ola tenta fazer isto...
onde tem ../eventos/ mude para o caminho absoluto ate a pasta exemplo
/home/deixe/public_html/admin/eventos/

se não funfar tenta fazer algo assim
criar as variavis tipo assim

$foto01 = $_POST['foto01'];
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#3 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 15:20

Tentei todas as combinações de diretorio possiveis e nada! ehehehe

fiz essa de pegar o dado pelo $_POST tbm e continua o mesmo erro

#4 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 15:36

tenta deste geito ve se funciona lembrando que fiz mais não testei

<?php
        include("verificar.php");
        include("../conectar.php");

// inicia criação de pasta
if(!empty($nomedapasta)){
        @mkdir('../eventos/'.$nomedapasta, 0777);
}
// fim da criação da pasta

//faz o upload do aquivo da foto
	$uploaddir="../eventos/";
	if($foto01 != "none") {// verifica campo foto 1
	if ($copy = copy($_FILES['foto01']['tmp_name'], $uploaddir.$nomedapasta. $_FILES['foto01']['name'])){
		$varfoto01 = $_FILES['foto']['name'];
	if(!$copy){
                echo 'Erro ao copiar a foto.';
                exit;
        }else{
mysql_query( 'INSERT INTO `galeria` (`id`, `nome`, `local`, `cidade`, `estado`, `dia`, `mes`, `ano`, `pasta`, `foto01`) VALUES ( NULL, "'.$nome.'", "'.$local.'", "'.$cidade.'", "'.$estado.'", "'.$dia.'", "'.$mes.'", "'.$ano.'", "'.$nomedapasta.'", "'.$foto01_name.'")' ) or die( mysql_error() );
    }

}} 
?>

Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#5 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 15:48

Então, com esse teu código deu esse erro:

Warning: copy() [function.copy]: Unable to access in /home/deixe/public_html/admin/eventos_cadastrarbd.php on line 14

nessa linha:
if ($copy = copy($_FILES['foto01']['tmp_name'], $uploaddir.$nomedapasta. $_FILES['foto01']['name'])){

#6 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 15:52

me diz uma coisa este nomedapasta ele passa do formulario, tem um campo ou ele cria apartir do nome de algum outro campo???
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#7 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 16:02

<input type="text" name="nomedapasta" maxlength="100" style="width:250px;" class="inpt"/>

o nome é digitado no formulario, dai a pasta eh criada...

A unica coisa que esta funcionando, eh que a pasta eh criada ehehe
Mas o arquivo nao eh upado, nem os dados cadastrados no BD

#8 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 16:10

deixa eu tentar fazer umas modificaçõs
<?php
        include("verificar.php");
        include("../conectar.php");

// inicia criaçao de pasta

if(!empty($nomedapasta)){
        @mkdir('../eventos/'.$nomedapasta, 0777);
}
// fim da criaçao da pasta

//faz o upload do aquivo da foto
	$uploaddir="../eventos/";
	if($foto01 != "none") {// verifica campo foto 1
	if ($copy = copy($_FILES['foto01']['tmp_name'], $uploaddir, $nomedapasta. $_FILES['foto01']['name'])){
		$varfoto01 = $_FILES['foto']['name'];
	if(!$copy){
                echo 'Erro ao copiar a foto.';
                exit;
        }else{
mysql_query( 'INSERT INTO `galeria` (`id`, `nome`, `local`, `cidade`, `estado`, `dia`, `mes`, `ano`, `pasta`, `foto01`) VALUES ( NULL, "'.$nome.'", "'.$local.'", "'.$cidade.'", "'.$estado.'", "'.$dia.'", "'.$mes.'", "'.$ano.'", "'.$nomedapasta.'", "'.$varfoto01.'")' ) or die( mysql_error() );
    }

}} 
?>

ou este

<?php
        include("verificar.php");
        include("../conectar.php");

// inicia criaçao de pasta
$nomedapasta = $_POST['nomedapasta'];
if(!empty($nomedapasta)){
        @mkdir('../eventos/'.$nomedapasta, 0777);
}
// fim da criaçao da pasta

//faz o upload do aquivo da foto
	$uploaddir="../eventos/";
	if($foto01 != "none") {// verifica campo foto 1
	if ($copy = copy($_FILES['foto01']['tmp_name'], $uploaddir, $nomedapasta. $_FILES['foto01']['name'])){
		$varfoto01 = $_FILES['foto']['name'];
	if(!$copy){
                echo 'Erro ao copiar a foto.';
                exit;
        }else{
mysql_query( 'INSERT INTO `galeria` (`id`, `nome`, `local`, `cidade`, `estado`, `dia`, `mes`, `ano`, `pasta`, `foto01`) VALUES ( NULL, "'.$nome.'", "'.$local.'", "'.$cidade.'", "'.$estado.'", "'.$dia.'", "'.$mes.'", "'.$ano.'", "'.$nomedapasta.'", "'.$varfoto01.'")' ) or die( mysql_error() );
    }

}} 
?>

ou este

<?php
        include("verificar.php");
        include("../conectar.php");

// inicia criaçao de pasta
$nomedapasta = $_POST['nomedapasta'];
if(!empty($nomedapasta)){
        @mkdir('../eventos/'.$nomedapasta, 0777);
}
// fim da criaçao da pasta

//faz o upload do aquivo da foto
	$uploaddir="../eventos/";
	if($foto01 != "none") {// verifica campo foto 1
	if ($copy = copy($_FILES['foto01']['tmp_name'], $uploaddir. $_POST['nomedapasta']. $_FILES['foto01']['name'])){
		$varfoto01 = $_FILES['foto']['name'];
	if(!$copy){
                echo 'Erro ao copiar a foto.';
                exit;
        }else{
mysql_query( 'INSERT INTO `galeria` (`id`, `nome`, `local`, `cidade`, `estado`, `dia`, `mes`, `ano`, `pasta`, `foto01`) VALUES ( NULL, "'.$nome.'", "'.$local.'", "'.$cidade.'", "'.$estado.'", "'.$dia.'", "'.$mes.'", "'.$ano.'", "'.$nomedapasta.'", "'.$varfoto01.'")' ) or die( mysql_error() );
    }

}} 
?>


se não funcionar manda o formulario ea tabela que dai testo aqui???
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#9 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 16:42

Os 2 primeiros códigos deram esse erro:
Warning: Wrong parameter count for copy() in /home/deixe/public_html/admin/eventos_cadastrarbd.php on line 15

e o terceiro código esse:
Warning: copy() [function.copy]: Unable to access in /home/deixe/public_html/admin/eventos_cadastrarbd.php on line 15


O meu formulario é esse:
<?php
	include "verificar.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>Grupo DeixeStar //admin</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="shortcut icon" type="image/x-icon" href="../images/favicon.ico">
<link rel="StyleSheet" href="css/style.css" type="text/css" />
<style type="text/css">
</style>
</head>
<body>
<div id="bodyWrap">
	<div class="pageWrapper">
		<div id="header">
			<a href="index.php"><div id="logo"></div></a>
			<div id="heading">
		    <div class="head"></div>
				<div class="top">
					<a href="agenda.php">Agenda</a>
					<a href="eventos.php">Eventos</a>
                    <a href="videos.php">Vídeos</a>
                    <a href="novidades.php">Novidades</a>
                    <a href="mural.php">Mural de Recados</a>
			  </div>
				<div class="sub">
					<a href="index.php">Home</a>
                    <a href="usuarios.php">Usuários</a>
					<a href="logout.php">Logout</a>
				</div>
			</div>
		</div>
	</div>
    <br />
    
    <div class="pageWrapper" id="menubaixo">
    Cadastrar evento<span style="margin-left:30px;"></span><a href="eventos_gerenciar.php">Gerenciar eventos</a><span style="margin-left:30px;"></span><a href="eventos_selecionar.php">Enviar fotos</a>
    </div>
    <br />
	<div class="pageWrapper" id="main">
	
    <div style="padding:10px 10px 10px 10px;">
    
    <form method="post" action="eventos_cadastrarbd.php">
    
    <h1>Dados do evento:</h1>
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Nome do evento: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="nome" maxlength="100" style="width:350px;" class="inpt"/></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Local do evento: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="local" maxlength="100" style="width:350px;" class="inpt"/></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Cidade: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="cidade" maxlength="100" onclick="this.value=''" value="São Miguel do Oeste" style="width:350px;" class="inpt"/></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Estado: </div>
    <div style="float:left; margin-left:20px; text-align:left;">
    <select name="estado" class="slct">
        <option value="SC">SC</option>
        <option value="AC">AC</option>
        <option value="AL">AL</option>
        <option value="AM">AM</option>
        <option value="AP">AP</option>
        <option value="BA">BA</option>
        <option value="CE">CE</option>
        <option value="DF">DF</option>
        <option value="ES">ES</option>
        <option value="GO">GO</option>
        <option value="MA">MA</option>
        <option value="MG">MG</option>
        <option value="MS">MS</option>
        <option value="MT">MT</option>
        <option value="PA">PA</option>
        <option value="PB">PB</option>
        <option value="PE">PE</option>
        <option value="PI">PI</option>
        <option value="PR">PR</option>
        <option value="RJ">RJ</option>
        <option value="RN">RN</option>
        <option value="RO">RO</option>
        <option value="RR">RR</option>
        <option value="RS">RS</option>
        <option value="SC">SC</option>
        <option value="SE">SE</option>
        <option value="SP">SP</option>
        <option value="TO">TO</option>
        </select>
    </div>
    <br /><br /><br />
    
    <h1>Data do evento:</h1>
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Dia: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="dia" maxlength="2" style="width:50px;" class="inpt"/><span style="margin-left:10px;"></span><i><span style="font-size:11px;">Mínimo de dois dígitos.</span></i></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Mês: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="mes" maxlength="2" style="width:50px;" class="inpt"/><span style="margin-left:10px;"></span><i><span style="font-size:11px;">Mínimo de dois dígitos.</span></i></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Ano: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="ano" maxlength="4" style="width:50px;" class="inpt"/><span style="margin-left:10px;"></span><i><span style="font-size:11px;">Mínimo de quatro dígitos.</span></i></div>
    <br /><br /><br />
    
    <h1>Dados para upload:</h1>
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Pasta de destino: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="text" name="nomedapasta" maxlength="100" style="width:250px;" class="inpt"/><span style="margin-left:10px;"></span><i><span style="font-size:11px;">Ex: 07052011gravacaodvd</span></i></div>
    <br /><br />
    <div style="float:left; width:200px; text-align:right; line-height:20px;">Capa do evento: </div>
    <div style="float:left; margin-left:20px; text-align:left;"><input type="file" name="foto01" style="width:290px;" /><span style="margin-left:10px;"></span><i><span style="font-size:11px;">Tamanho: xxx x xxx pixels.</span></i></div>
    <br /><br /><br /><br />
    <div style="text-align:center;">
    <input type="submit" value="Cadastrar" class="btn"/></div>
    <br /><br /><br />
    <i><span style="font-size:11px;">*Todos os campos são de preenchimento obrigatório.</span></i>
    </form>
    <br /><br /><br /><br /><br /><br />
    </div>

	</div>
    
</div>
</body>
</html>

valeu cara

já resolvi cara!

O problema era que só faltava um enctype="multipart/form-data" no formulario! ahhaa

valeuu

#10 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 16:42

tem como vc mandar a tabela galeria só ela
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#11 Buthy

Buthy

    Normal

  • Usuários
  • 93 posts
  • Sexo:Masculino

Posted 30/05/2011, 16:45

Nem precisa mais cara

O problema era só que faltava o enctype="multipart/form-data" no formulário ehehe

obrigado

#12 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 30/05/2011, 17:01

RSRSRSRSR É as vezes a gente quebra a cabeça por causa de um simples erro ou coisa que a gente esqueceu?? eu tbm tava quebrando a cabeça aqui com outra linguagem e tudo que faltava era um #FORM. VLWW TAMOS AI PARA AJUDAR
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq