Ir para conteúdo

POWERED BY:

Arquivado

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

Fox_paraty

consigo fazer update de imagem, mas não consigo gravar no BD

Recommended Posts

Seguinte....Consigo fazer normalmente o Update da Imagem, mas ela não vai pro banco de geito nenhum.

 

Esse é o código do Thumbnail da imagem:

 

 

require "dbconfig.php"; 	set_time_limit(0);	include "funcoes.php"; if(isset($_FILES["arquivo"])){	class Upload {		var $arquivo = "";		var $erro = array ( "0" => "upload execultado com sucesso!",							"1" => "O arquivo é maior que o permitido pelo Servidor",							"2" => "O arquivo é maior que o permitido pelo formulario",							"3" => "O upload do arquivo foi feito parcialmente", 							"4" => "Não foi feito o upload do arquivo");			function Verifica_Upload() {			$this->arquivo = isset($_FILES['arquivo']) ? $_FILES['arquivo'] : FALSE;			if(!is_uploaded_file($this->arquivo['tmp_name'])) {				return false;			}			$get = getimagesize($this->arquivo['tmp_name']);						if(($get["mime"] != "image/jpeg") AND ($get["mime"] != "image/gif") AND ($get["mime"] != "image/png")) {				echo "<span style=\"color: white; border: solid 1px; background: red;\">Esse foto nao é uma imagem valida</span>";				exit;			}			return true;		}				function Envia_Arquivo() {			if($this->Verifica_Upload()) {				$this->gera_fotos();				return true;				} else {					echo "<span style=\"color: white; border: solid 1px; background: red;\">".$this->erro[$this->arquivo['error']]."</span>";			}		}				function gera_fotos() {			$diretorio = "teste/";			$diretorio_g = "teste/g/";			if(!file_exists($diretorio)) {				mkdir($diretorio);			}			if(!file_exists($diretorio_g)) {				mkdir($diretorio_g);			}		   								$get2 = getimagesize($this->arquivo['tmp_name']); /* Vai servir para verificar se eh GIF ou JPG ou PNG*/			$aux_tipo_imagem = $get2["mime"]; /* Vai servir para verificar se eh GIF ou JPG ou PNG*/						if ($aux_tipo_imagem == "image/jpeg") {				$nome_foto  = "imagem_".time().".jpg";				//determino uma resolução maxima e se a imagem for maior ela sera reduzida				reduz_imagem_jpg($this->arquivo['tmp_name'], 130, 130, $diretorio_g.$nome_foto);			}						if ($aux_tipo_imagem == "image/gif") {				$nome_foto  = "imagem_".time().".gif";				//determino uma resolução maxima e se a imagem for maior ela sera reduzida				reduz_imagem_gif($this->arquivo['tmp_name'], 130, 130, $diretorio_g.$nome_foto);			}						if ($aux_tipo_imagem == "image/png") {				$nome_foto  = "imagem_".time().".png";				//determino uma resolução maxima e se a imagem for maior ela sera reduzida				reduz_imagem_png($this->arquivo['tmp_name'], 130, 130, $diretorio_g.$nome_foto);				}			echo "<span style=\"color: white; border: solid 1px; background: purple;\">".$this->erro[$this->arquivo['error']]."</span>";			 		   $descricao = $_POST["descricao"];				// Isso aqui faz gravar o nome do arquivo no banco de dados, lembrando que você deve fazer a conexao antes... :D	   mysql_query("update  rsfotos SET  descricao='$descricao', foto='$nome_foto' where id=$id"); } }    } ?>

 

Observação:

 

Quando eu digito ali abaixo de " $descricao = $_POST["descricao"];" Aparece tudo perfeitamente, nome da imagem e descrição. O Problema é que daí em diante não grava no bando de dados nem descricao e nem nome_foto.

 

print $nome_foto;

print $descricao;

die;

exit;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer resgatar um valor de uma string dentro de uma função, que no caso é a que faz o upload.

 

Uma solução é voce passar o valor da string com o nome da foto por session.

 

$_SESSION['nomedafoto'] = $variavel com o nome

 

declara ela no codigo fora de uma função e resgata ela aonde você deseja inserir no banco.

 

nao sei se é o ideial + funciona.

 

abraços.

 

Funções nao trocam $variaveis dentro de uma para outra

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fox_paraty , beleza! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

O título do seu tópico foi editado por desrespeitar a 9ª Regra do fórum. Leia as regras e utilize-as como referência em futuras postagens. okay!!!!

Ler Regras

 

Para melhor entendimento e visualização do seu código, Utilize a Tag code, que está na barra de ferramentas acima, enquanto faz sua postagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ainda não deu tempo de olhar todo o código, mas deixa a linha do update assim:

 

mysql_query("UPDATE  rsfotos SET  descricao='$descricao', foto='$nome_foto' where id='$id'");

testa ai...

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.