Ir para conteúdo

POWERED BY:

Arquivado

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

PauloRJ

[RESOLVIDO] Como recupear valor de função?

Recommended Posts

Fala ae!

Peguei o script de upload de fotos no laboratorio do Fabyo.

 

Mais ae tem o porém. Nao consigo recuperar o nome da foto fora da função.

 

So consigo efetuar o INSERT no banco com nome da foto, se eu colocar o insert dentro da função.

 

Mas como estou trabalhando com cadastro de usuario com foto, não consigo recuperar os dados via $_POST dentro da função e nem o nome da foto fora da função. (compicado)

Com isso fico sem escolha, nao estou conseguindo efetuar nem um nem outro.

 

Sim, pensei na ideia de efetuar 2 etapas, cadastro nome etc, e depois enviar a foto.

Mas como a dúvida surgiu teria como resgatar o nome da foto ao fim do codigo depois das linhas

 

$upload = new Upload();

$upload->Envia_Arquivo();

 

Bom para nao terem dúvias eu comentei todas as { } Abraços :rolleyes:

 

<?// Inicio function reduz_imagem($img, $max_x, $max_y, $nome_foto) function reduz_imagem($img, $max_x, $max_y, $nome_foto) { //1//pega o tamanho da imagem ($original_x, $original_y)list($width, $height) = getimagesize($img);$original_x = $width;$original_y = $height;// se a largura for maior que alturaif($original_x > $original_y) { //2   $porcentagem = (100 * $max_x) / $original_x;	  } //2else { //3   $porcentagem = (100 * $max_y) / $original_y;   } //3$tamanho_x = $original_x * ($porcentagem / 100);$tamanho_y = $original_y * ($porcentagem / 100);$image_p = imagecreatetruecolor($tamanho_x, $tamanho_y);$image   = imagecreatefromjpeg($img);imagecopyresampled($image_p, $image, 0, 0, 0, 0, $tamanho_x, $tamanho_y, $width, $height);return imagejpeg($image_p, $nome_foto, 100);} //1// Inicio Class Uploadclass Upload{ //4	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"					   );   // Inicio Funçao Verifica_Upload		function Verifica_Upload()	{ //5		$this->arquivo = isset($_FILES['arquivo']) ? $_FILES['arquivo'] : FALSE;		if(!is_uploaded_file($this->arquivo['tmp_name']))	{ //6			return false;	} //6			$get = getimagesize($this->arquivo['tmp_name']);		   	if($get["mime"] != "image/jpeg")		{  //7   		   echo "<span style=\"color: white; border: solid 1px; background: red;\">Esse foto nao é uma imagem valida</span>";			exit;		} //7		return true;	} //5	// Inicio Funçao Envia_Arquivo	function Envia_Arquivo()	{ //8		if($this->Verifica_Upload())		 { //9			$this->gera_fotos();			return true;				} //9		else 		{ //10			echo "<span style=\"color: white; border: solid 1px; background: red;\">".$this->erro[$this->arquivo['error']]."</span>";		} //10	} //8		// Inicio Funçao gera_fotos	function gera_fotos()	{ //11		$diretorio = "fotos/"; //Diretorio onde salvar as imagens		if(!file_exists($diretorio))		{ //12			mkdir($diretorio);		} //12				$nome_foto  = "imagem_".time().".jpg";				$nome_thumb = "thumb_".time().".jpg";				//determino uma resolução maxima e se a imagem for maior ela sera reduzida		reduz_imagem($this->arquivo['tmp_name'], 600, 800, $diretorio.$nome_foto);		  				//passo o tamanho da thumbnail		reduz_imagem($this->arquivo['tmp_name'], 80, 90, $diretorio.$nome_thumb); 		echo "<span style=\"color: white; border: solid 1px; background: blue;\">".$this->erro[$this->arquivo['error']]."</span>";	}  //11 } //4$upload = new Upload();$upload->Envia_Arquivo();?>
http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVI!

 

Fui testando e percebi que $_SESSION e $_GLOBAL são lidas dentro de function (funções)

Com isso consegui inserir as informações dentro da funçã na qual era necessario para completar o WHERE do INSERT.

 

 

valeu!

 

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

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.