Ir para conteúdo

POWERED BY:

Arquivado

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

johnhey

Upload de Imagem com efeito

Recommended Posts

Boa tarde pessoal fiz um upload multiplo de imagens conforme o link abaixo, que esta a funcionar.

 

https://youtu.be/0BzYNHQx35g

 

Em outro tópico gostaria de fazer a união de duas imagens(Mesclar) que também esta a funcionar, veja no link abaixo.

 

http://forum.imasters.com.br/topic/537798-efeitos-em-foto/

 

O que gostaria de fazer agora é a união dos dois códigos, ou seja, selecciono as imagens que gostaria de fazer upload para o servidor e antes de fazer o upload ela mesclaria as imagens para depois copiar.

 

Peço desculpas desde já se as vezes não sei me expressar muito bem, pois nunca fiz nenhuma aula sobre o assunto.

 

segue os dois código:

 

index.php

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sem título</title>
</head>
<div class="fotos_expo">
  <?php include "upload.php"; ?>
	
	<form action="" method="post" enctype="multipart/form-data">
		
		<input type="file" name="img[]" multiple>
		<input type="submit" name="upload" value="Upload">
		
	</form>
  </div>
<body>
</body>
</html>

mesclar.php

<?php

// tutorial para inserir marca dagua
header('content-type: image/jpeg', 'content-type: image/png');
// carrega as imagens
$foto= imagecreatefromjpeg("imagens/teste.jpg"); // não esquecer de verificar o nome do arquivo
$marca=imagecreatefrompng("imagens/fotoreal.png"); // não esquecer de verificar o nome do arquivo

// pega as dimensoes da marca d'agua
$marca_larg=imagesx($marca);
$marca_alt= imagesy($marca);

// insere a marca na imagem
imagecopyresampled($foto,$marca,0,0,0,0,$marca_larg,$marca_alt,$marca_larg,$marca_alt);

// exibe a imagem
imagejpeg($foto,"",100);

?>

upload.php

<?php
	if(isset($_POST['upload'])){
		
		//INFO IMAGEM
		$file 		= $_FILES['img'];
		$numFile	= count(array_filter($file['name']));
		
		//PASTA
		$folder		= 'imagens';
		
		//REQUISITOS
		$permite 	= array('image/jpeg', 'image/png');
		$maxSize	= 1024 * 1024 * 5;
		
		//MENSAGENS
		$msg		= array();
		$errorMsg	= array(
			1 => 'O arquivo no upload é maior do que o limite definido em upload_max_filesize no php.ini.',
			2 => 'O arquivo ultrapassa o limite de tamanho em MAX_FILE_SIZE que foi especificado no formulário HTML',
			3 => 'o upload do arquivo foi feito parcialmente',
			4 => 'Não foi feito o upload do arquivo'
		);
		
		if($numFile <= 0)
			echo 'Selecione uma Imagem!';
		else{
			for($i = 0; $i < $numFile; $i++){
				$name 	= $file['name'][$i];
				$type	= $file['type'][$i];
				$size	= $file['size'][$i];
				$error	= $file['error'][$i];
				$tmp	= $file['tmp_name'][$i];
				
				$extensao = @end(explode('.', $name));
				$novoNome = rand().".$extensao";
				
				if($error != 0)
					$msg[] = "<b>$name :</b> ".$errorMsg[$error];
				else if(!in_array($type, $permite))
					$msg[] = "<b>$name :</b> Erro imagem não suportada!";
				else if($size > $maxSize)
					$msg[] = "<b>$name :</b> Erro imagem ultrapassa o limite de 5MB";
				else{
					
					if(move_uploaded_file($tmp, $folder.'/'.$novoNome))
						$msg[] = "<b>$name :</b> Upload Realizado com Sucesso!";
					else
						$msg[] = "<b>$name :</b> Desculpe! Ocorreu um erro...";
				
				}
				
				foreach($msg as $pop)
					echo $pop.'<br>';
			}
		}
	}

Pela lógica acho que ficaria assim:

 

Selecione as imagens

|

mesclar as fotos

|

upload

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não existe mágica, você só poderá mesclar as imagens após o upload.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, então sabe me dizer como faço para mudar o nome da imagem aleatório? ao invés de colocar "teste.jpg" ele alterar sozinho.

 

imagem1.jpg, imagem2.jpg, imagem3.jpg....

$foto= imagecreatefromjpeg("imagens/teste.jpg"); // não esquecer de verificar o nome do arquivo

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.