Upload photo and save original photo and one cut?

Asked

Viewed 731 times

2

Here he is saving only the modified, I wanted to save the original and modified.

<?php
$page=" Upload de Imagens";

if (isset($_POST["cadastrar"])) {

    include_once 'classes/resize-class.php'; // Incluímos a classe

    $titulo=$_POST["titulo"];
    $descricao=$_POST["descricao"]; 
    $autor=$_POST["autor"];
    $local=$_POST["local"];
    $idalbum=$_POST["idalbum"]; 

    // Pasta onde o arquivo vai ser salvo
    //$caminho = "upload/"; // Este é o caminho onde as imagens serão guardadas no servidor
    $_UP['pasta'] = 'upload/';

    $imagem = $_FILES['arquivo']['name']; // Associámos uma variável ao nome da imagem

    // Tamanho máximo do arquivo (em Bytes)
    $_UP['tamanho'] = 1024 * 1024 * 5; // 5Mb

    // Array com as extensões permitidas
    $_UP['extensoes'] = array('jpg', 'png', 'gif');

    // Renomeia o arquivo? (Se true, o arquivo será salvo como .jpg e um nome único)
    $_UP['renomeia'] = false;

    // Array com os tipos de erros de upload do PHP
    $_UP['erros'][0] = 'Não houve erro';
    $_UP['erros'][1] = 'O arquivo no upload é maior do que o limite do PHP';
    $_UP['erros'][2] = 'O arquivo ultrapassa o limite de tamanho especifiado no HTML';
    $_UP['erros'][3] = 'O upload do arquivo foi feito parcialmente';
    $_UP['erros'][4] = 'Não foi feito o upload do arquivo';

    // Verifica se houve algum erro com o upload. Se sim, exibe a mensagem do erro
    if ($_FILES['arquivo']['error'] != 0) {
    die("Não foi possível fazer o upload, erro:<br />" . $_UP['erros'][$_FILES['arquivo']['error']]);
    exit; // Para a execução do script
    }

    // Caso script chegue a esse ponto, não houve erro com o upload e o PHP pode continuar

    $file_name = $_FILES['arquivo']['name'];

    $tmp = explode('.', $file_name);
    $extensao = end($tmp);

    // Faz a verificação do tamanho do arquivo
    if ($_UP['tamanho'] < $_FILES['arquivo']['size']) {
    echo "O arquivo enviado é muito grande, envie arquivos de até 5Mb.";
    }

    // O arquivo passou em todas as verificações, hora de tentar movê-lo para a pasta
    else {
    // Primeiro verifica se deve trocar o nome do arquivo
    //if ($_UP['renomeia'] == true) {
        if ($_UP['renomeia'] == false) {
    // Cria um nome baseado no UNIX TIMESTAMP atual e com extensão .jpg
    $nome_final = $titulo.'.'.$extensao;
    } else {
    // Mantém o nome original do arquivo
    $nome_final = $_FILES['arquivo']['name'];
    }

    // Depois verifica se é possível mover o arquivo para a pasta escolhida
    if (move_uploaded_file($_FILES['arquivo']['tmp_name'], $_UP['pasta']. $nome_final)) {

    $resize_tamanho1 = new resize($_UP['pasta']. $nome_final );

    // Definimos as medidas que cada tamanho irá ter
    $resize_tamanho1->resizeImage(700, 400, 'crop');  

    // Para finalizar guardámos a imagem. Definimos o caminho, qual o nome e a qualidade
    $resize_tamanho1->saveImage($_UP['pasta'] . $nome_final , 100);

    echo "<script language='javascript'>    
        alert('Upload efetuado com sucesso!');
    </script>"; 
    //echo '<br /><a href="' . $_UP['pasta'] . $nome_final . '">Clique aqui para acessar o arquivo</a>';
    } else {
    // Não foi possível fazer o upload, provavelmente a pasta está incorreta
    echo "Não foi possível enviar o arquivo, tente novamente";
    }
    }

    //Conectando no servidor com o localhost-mysqli
    include("conecta.php");

    $sql = "insert into imagens (foto, titulo, descricao, local, autor, idalbum, data) values ('$nome_final', '$titulo', '$descricao', '$local', '$autor', '$idalbum', NOW())";

    //Executa query no BD
    $resultado = mysqli_query($conexao, $sql);  

}
?>

1 answer

1

When saving the modified image, save the original as well:

$imagem = $_FILES['arquivo']['name'];
...
.. 
.

$resize_tamanho = new resize($_UP['pasta']. $imagem);
$resize_tamanho->saveImage($_UP['pasta'] . 'Original_'.$imagem, 100);    
..
.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.