Marxrj
Members-
Total de itens
43 -
Registro em
-
Última visita
Tudo que Marxrj postou
-
Boa noite, estou quebrando a cabeça para incluir marca d'agua em imagens no upload. No upload eu consigo fazer o redimensionamento perfeito, inserir uma parte de outro código para inserir a marca d'agua, porpem ele não funcionou na primeira tentativa, fiz umas alterações, aí ele faz o redimensionamento, coloca a logo mas a imagem de fundo fica simplesmente preta.. Esse abaixo é o padrão no qual ele faz o upload da foto e redimensiona, TUDO CERTO!! switch ($foto['type']): case 'image/jpeg'; case 'image/pjpeg'; $imagem_temporaria = imagecreatefromjpeg($caminho_imagem); $largura_original = imagesx($imagem_temporaria); $altura_original = imagesy($imagem_temporaria); $nova_largura = $largura ? $largura : floor(($largura_original / $altura_original) * $altura); $nova_altura = $altura ? $altura : floor(($altura_original / $largura_original) * $largura); $imagem_redimensionada = imagecreatetruecolor($nova_largura, $nova_altura); imagecopyresampled($imagem_redimensionada, $imagem_temporaria, 0, 0, 0, 0, $nova_largura, $nova_altura, $largura_original, $altura_original); imagejpeg($imagem_redimensionada, $caminho_imagem); Ai parti para inserir a parte para colocação da marca d'adua. O que foi incluso é aonde tem os comentários. Mas acontece neste momento que ele faz o upload e o redimensionamento normal mas não insere a marca d'agua switch ($foto['type']): case 'image/jpeg'; case 'image/pjpeg'; $imagem_temporaria = imagecreatefromjpeg($caminho_imagem); // Obtem a logomarca $imagem_logo = imagecreatefromgif( "logo_texto.gif" ); $largura_original = imagesx($imagem_temporaria); $altura_original = imagesy($imagem_temporaria); // Obtem a largura_nova da imagem $larguraLogo = imagesx( $imagem_logo ); // Obtém a altura da imagem $alturaLogo = imagesy( $imagem_logo ); // Calcula X 5px da latreral direira $x_logo = imagesx( $imagem ) - $larguraLogo - 5; // Calcula X 5px do rodapé $y_logo = imagesy( $imagem ) - $alturaLogo - 5; // Copia a logo para a imagem imagecopymerge( $imagem, $imagem_logo, $x_logo, $y_logo, 0, 0, $larguraLogo, $alturaLogo, 100 ); $nova_largura = $largura ? $largura : floor(($largura_original / $altura_original) * $altura); $nova_altura = $altura ? $altura : floor(($altura_original / $largura_original) * $largura); $imagem_redimensionada = imagecreatetruecolor($nova_largura, $nova_altura); imagecopyresampled($imagem_redimensionada, $imagem_temporaria, 0, 0, 0, 0, $nova_largura, $nova_altura, $largura_original, $altura_original); imagejpeg($imagem_redimensionada, $caminho_imagem); Por fim apenas apenas troquei o nome imagem_logo na parte que iria inserir a marca d'agua por imagem_temporaria que já tinha no código antigo. Neste momento ele faz o upload, redimensiona e insere a marca d'agua, mas a imagem de fundo não aparece, fica um fundo preto. switch ($foto['type']): case 'image/jpeg'; case 'image/pjpeg'; $imagem_temporaria = imagecreatefromjpeg($caminho_imagem); // Obtem a logomarca $imagem_temporaria = imagecreatefromgif( "logo_texto.gif" ); $largura_original = imagesx($imagem_temporaria); $altura_original = imagesy($imagem_temporaria); // Obtem a largura_nova da imagem $larguraLogo = imagesx( $imagem_temporaria ); // Obtém a altura da imagem $alturaLogo = imagesy( $imagem_temporaria ); // Calcula X 5px da latreral direira $x_logo = imagesx( $imagem ) - $larguraLogo - 5; // Calcula X 5px do rodapé $y_logo = imagesy( $imagem ) - $alturaLogo - 5; // Copia a logo para a imagem imagecopymerge( $imagem, $imagem_temporaria, $x_logo, $y_logo, 0, 0, $larguraLogo, $alturaLogo, 100 ); $nova_largura = $largura ? $largura : floor(($largura_original / $altura_original) * $altura); $nova_altura = $altura ? $altura : floor(($altura_original / $largura_original) * $largura); $imagem_redimensionada = imagecreatetruecolor($nova_largura, $nova_altura); imagecopyresampled($imagem_redimensionada, $imagem_temporaria, 0, 0, 0, 0, $nova_largura, $nova_altura, $largura_original, $altura_original); imagejpeg($imagem_redimensionada, $caminho_imagem); Se alguém puder da uma luz e dizer aonde estou errando.
-
Fiz uma atualização no cadastro. Vou deixar ele aqui anexado para quem quiser testar e ver como alterar para ele também deletar a imagem da pasta. Deixo aqui o link do vídeo que faço uma pequena demonstração do cadastro. Vídeo dos arquivos e do cadastro Link para baixar o cadastro Fiz essa modificação hoje cedo no arquivo image_delete.php Original: <?php require_once ("conexao.php"); if (isset($_GET["image_id"])) { $imageId = $_GET["image_id"]; } $sql = "DELETE FROM images_info WHERE image_id='" . $imageId . "'"; mysqli_query($conn, $sql); header("Location:index.php"); ?> Adicionei a função unlink como abaixo. <?php require_once ("conexao.php"); if (isset($_GET["image_id"])) { $imageId = $_GET["image_id"]; } $sql = "DELETE FROM images_info WHERE image_id='" . $imageId . "'"; mysqli_query($conn, $sql); unlink("image_path"); unlink("uploads/15847225705e74f28a603e1.jpg"); header("Location:index.php"); ?> Assim ele está apagando a foto da pasta também, porém isso é eu inserindo o nome do arquivo com a extensão manual, quando preciso no campo abaixo informar o arquivo e extensão automaticamente. unlink("uploads/15847225705e74f28a603e1.jpg"); Lembrado que no banco de dados eu não estou guardando o caminho completo (uploads/15847225705e74f28a603e1.jpg) e somente o nome da imagem e extensão (15847225705e74f28a603e1.jpg)
-
Boa noite, No meu cadastro ele chama o arquivo delete.php, mas ele deleta o caminho da imagem no banco de dados somente, eu queria incluir a função para que ele excluísse também a imagem da pasta fotos. <?php session_start(); include_once("conexao.php"); if (isset($_GET["id"])) { $Id = $_GET["id"]; } $sql = "DELETE FROM images_info WHERE id='" . $Id . "'"; mysqli_query($conn, $sql); header("index.php"); ?>
-
Alguém com uma dica dentro do código apresentado? <?php session_start(); include_once("conexao.php"); if (isset($_GET["id"])) { $Id = $_GET["id"]; } $sql = "DELETE FROM images_info WHERE id='" . $Id . "'"; mysqli_query($conn, $sql); header("index.php"); ?>
-
Para quem puder ver melhor, está o arquivo aqui completo do dropzone. Só subir o banco de dados e configurar o arquivo conexao.php bem simples. Aí podem testar para ver como eu poderia fazer o upload da imagem como nome gerado pelo md5 https://mega.nz/#!z7ojHKZa!ZXd9ufRyob6m2fY045U9UVKz37SuieY-8G101A2rNz0
-
Olá, estou usando a função do Dropzone para fazer o upload de imagens, mas queria que ele renomeasse a imagem. Se faço o upload de uma imagem com nome casa.jpg e depois uso uma imagem diferente com o mesmo nome, ele simplesmente mostra a imagem anterior. Queria uma ajuda então para tentar resolver isso, no código que tenho, saber aonde posso alterar, para usar alguma função md5 por exemplo segue meu código: <?php if (! empty($_FILES)) { $imagePath = isset($_FILES["file"]["name"]) ? $_FILES["file"]["name"] : "Undefined"; $targetPath = "uploads/"; $imagePath = $targetPath . $imagePath; $tempFile = $_FILES['file']['tmp_name']; $targetFile = $targetPath . $_FILES['file']['name']; if (move_uploaded_file($tempFile, $targetFile)) { echo "true"; } else { echo "false"; } } if (! empty($_GET["action"]) && $_GET["action"] == "save") { session_start(); include_once("database/conexao.php"); print $sql = "INSERT INTO images_info (image_path) VALUES ('" . $imagePath . "')"; mysqli_query($conn, $sql); $current_id = mysqli_insert_id($conn); } ?>
-
Acho que não entendeu, todas as imagens ficm no mesmo diretório, o que preciso é gravar a imagem com nomes aleatórios, isso se faz com o md5, mas não sei ali aonde inserir a função, para na hora de cadastrar uma imagem como o nome casa,.jpg ela grave com o nome 06hgd645gkdmxid.jpg por exemplo.
-
Pelo que estou vendo a mudança deve ser na linha 4 $imagePath = $targetPath . $imagePath;
-
Alterar para o que?
-
Olá a todos!, Queria aqui uma dica se alguém sabe como alinhar fotos no centro pelo bootstrap. Usando o padrão fotos retratos fica como abaixo __________ __________ __________ Mas eu queria que quando tivesse um número impar, a foto não ficasse alinhada na esquerda e sim centralizada como abaixo __________ __________ __________ Estou usando este padrão abaixo aonde ele alinha duas fotos ao lado, mas quando tem somente um ou em número impar, essa não centraliza e sim fica a esquerda. <div class="col-xs-12 col-sm-10 col-lg-6 col-md-3">