Ir para conteúdo

POWERED BY:

Arquivado

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

maiswww

Redimensionar imagens com Função PHP

Recommended Posts

Boa noite a todos. Estou com um upload de imagens funcionando normal, envia as imagens para a pasta e salva o nome no banco de dados MYSQL. Porem eu sei tratar uma imagem e redimensiona-lá usando algum programa o que provavelmente o usuário final não vai conseguir.

Pesquisei, pesquisei, tentei e tente mas não consegui funcionar (implementar) no meu sistema uma função para tal fim. Alguém pode me ajudar a sanar este problema.

 

Segue abaixo os arquivos para análise.

 

Função.php

 

class Redimensiona{
	
	public function Redimensionar($imagem, $largura, $pasta){
		
		$name = md5(uniqid(rand(),true));
		
		if ($imagem['type']=="image/jpeg"){
			$img = imagecreatefromjpeg($imagem['tmp_name']);
		}else if ($imagem['type']=="image/gif"){
			$img = imagecreatefromgif($imagem['tmp_name']);
		}else if ($imagem['type']=="image/png"){
			$img = imagecreatefrompng($imagem['tmp_name']);
		}
		$x   = imagesx($img);
		$y   = imagesy($img);
		$autura = ($largura * $y)/$x;
		
		$nova = imagecreatetruecolor($largura, $autura);
		imagecopyresampled($nova, $img, 0, 0, 0, 0, $largura, $autura, $x, $y);
		
		if ($imagem['type']=="image/jpeg"){
			$local="$pasta/$name".".jpg";
			imagejpeg($nova, $local);
		}else if ($imagem['type']=="image/gif"){
			$local="$pasta/$name".".gif";
			imagejpeg($nova, $local);
		}else if ($imagem['type']=="image/png"){
			$local="$pasta/$name".".png";
			imagejpeg($nova, $local);
		}		
		
		imagedestroy($img);
		imagedestroy($nova);	
		
		return $local;
	}
}
?>

inserrt_fotophp

 

<?php
include ("../../includes/config.php");
checaLogado();



$id_prancha = mysql_real_escape_string($_POST['id_prancha']);
$foto = $_FILES['foto'];


move_uploaded_file($foto['tmp_name'],"../../../upload/pranchas_venda/".$foto['name']);

	mysql_query(	"INSERT INTO prancha_foto (id_prancha,foto) VALUES ('$id_prancha','".$foto['name']."')");
		
		
		
	header("location: index_foto.php?id=$id_prancha");


?>

form.php

 

<?php
include("../../includes/header.php");

	$id = 0;
	$action = "insert_foto.php";
	$id_prancha = $_GET['id'];
	$foto = "";

?>
         
      		   <div class="panel panel-primary col-lg-12">
        <div class="panel-heading">
          <h3 class="panel-title"> 
            
         Inserir fotos das pranchas da loja
         
             
 </h3>
        </div>
          
        <div class="panel-body">
            <form action="<?=$action?>" method="post" enctype="multipart/form-data">
 
   <input type="hidden" name="id_prancha" value="<?=$id_prancha?>">
 

      <input type="file" class="form-control" name="foto"  />
    

      <input type="submit" value=' Salvar ' class="btn form-control btn-danger" />
   
   </form><br />
<a href="index.php" class="btn btn-success form-control">Ver todas</a> 
<?php
		 $consulta_foto = mysql_query("SELECT * FROM prancha_foto WHERE id_prancha=".$id_prancha);
				while ($rs = mysql_fetch_array($consulta_foto) )
		{
			
	?>
     </div>
      </div>
   
   
   
   <div class="row">
  <div class="col-sm-2 col-md-3">
    <div class="thumbnail">
        <?php echo "<img src='../../../upload/pranchas_venda/".$rs['foto']."' height='150' class='thumbnail' />";	?>
      <div class="caption">
        <h6><?=$rs['foto']?></h6>

        <p><a href="delete_foto.php?id=<?=$rs['id_prancha']?>" class="btn btn-danger btn-mini">Excluir</a>      <a href="index.php" class="btn btn-info pull-right">Ver todas</a>  
      </div>
        <?
		}
		
	?>
    </div>
    
  </div>
  
</div> 
 


 <?php


 
include("../../includes/footer.php");
?>          

 

Estou precisando bastante do funcionamento desta função. Se alguém puder me dar uma força.

Desde já agradeço.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não estou sabendo aonde instanciar a classe e chamar a função.

Estou perdido quanto ao que tenho pronto e funcionando que é o insert_foto.php e o form.php e como usar a função com esses arquivos.

Acho que agora ficou mais claro.

Obrigado pela atenção.

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.