franksniper 0 Denunciar post Postado Junho 2, 2010 require_once "class.ImgHandler.php"; if($_POST['submit']) { $arquivo = $_FILES["image"]; $pasta_dir = ""; $arquivo_nome = $pasta_dir . $arquivo["name"]; move_uploaded_file($arquivo["tmp_name"], $arquivo_nome); $img = $arquivo_nome; $ImgHandler = new ImgHandler(); $foto = $ImgHandler->saveImg($img); $ImgHandler->createThumb($foto); } Bom eu consegui, adaptei o move_upload_file e funcionou, porém um detalhe.Exemplo, envio uma imagem com o nome de inverno.jpg ele da resize e cria a thumb certinha, mas ele deixa esse inverno.jpg mais as duas fotos resize e thumb. Pode me dar uma ajuda? vlww Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Junho 2, 2010 é só apagar a imagem original com unlink. Nem sempre se deseja apagar a imagem original, por isso nao usei unlink Compartilhar este post Link para o post Compartilhar em outros sites
franksniper 0 Denunciar post Postado Junho 2, 2010 é só apagar a imagem original com unlink. Nem sempre se deseja apagar a imagem original, por isso nao usei unlink consegui, segue o código para kem keira! if($_POST['submit']) { $arquivo = $_FILES["image"]; $pasta_dir = ""; $arquivo_nome = $pasta_dir . $arquivo["name"]; move_uploaded_file($arquivo["tmp_name"], $arquivo_nome); $img = $arquivo_nome; $ImgHandler = new ImgHandler(); $foto = $ImgHandler->saveImg($img); $ImgHandler->createThumb($foto); unlink($img); } vlw beraldo Compartilhar este post Link para o post Compartilhar em outros sites
andrephp 0 Denunciar post Postado Junho 19, 2010 amigo vejo que ai ta apenas o download da classe..teria como postar o script completo com todos os arquivos... eu sou novo e entendo disso...e queria todo pronto..se possivel ficaria agradecido =D Compartilhar este post Link para o post Compartilhar em outros sites
WM _ Guilherme Ferrolli 0 Denunciar post Postado Setembro 18, 2010 Olá Imasters (ja virou rotina minha dar oi para o fórum, algo do tipo 'bom dia sol' KKKK) Bom, percebi que o grande problema da classe é a dificuldade de tornar uma PNG transparente, e ainda que o último script tenha funcionado melhor, o IE <8 não le PNG transparente, ele preenche a transparencia da PNG com branco, e infelizmente mais de 70% dos usuários ainda utilizam IE<8. Uma solução muito simples para este problema é Jquery, mais simples que JS puro. Com um código simples como <script type="text/javascript"> $("document").ready(function() { $("#logoA").animate({opacity: 0.4},10); //objeto com ID = logoA fica com 40% de opacidade com animação de 10ms $("#logoB").animate({opacity: 0.7},400); //objeto com ID = logoB fica com 70% de opacidade com animação de 400 ms $("#logoC").animate({opacity: 0.2},1000); //objeto com ID = logoB fica com 20% de opacidade com animação de 1000ms }); </script> você torna qualquer objeto transparente.Utilizando CSS opacity,-webkit-opacity,-moz-opacity e filter:alpha(opacity:1), obtem-se o mesmo resultado. orém, é claro que para que isto funcione o que não for transparente deve ser separado da imagem logo, por que de outro modo ficaria transparente também. Mas mesmo assim, considero a melhor opção. Existem diversas classes PHP para utilização mais prática do Jquery, tenho desenvolvido uma com as funções mais úteis, e em breve estarei postando aqui. A classe inclui, Jquery Ajax,animação de DIVs,menus animados, Drag and Drop, objetos Sortable, Tab menus,FadeIn FadeOut e outras coisinhas.. E isso ai.. Abraços ;D Compartilhar este post Link para o post Compartilhar em outros sites
ZUCOLLI 1 Denunciar post Postado Outubro 7, 2011 Boa noite... Seria possível incluir um novo tipo de imagem? Seria imagens EPS, só que em 4 cores (CMYK), para gerar o thumb? Obrigado. ZUCOLLI Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Abril 19, 2012 Boa tarde. Quando estou gravando no banco a varial foto: $foto = $ImgHandler->saveImg( $img ); Só que ela pega o caminho completo da imagem (../../uploads/13348578834f90509b9f079966503535.jpg). Como faço para gravar somente o nome da imagem, sem o caminho? Obrigado pela atenção. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 19, 2012 pode usar a função basename() Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Abril 19, 2012 pode usar a função basename() Boa tarde Beraldo... Poderia detalhar mais um pouco sobre a função? Obrigado pela ajuda... Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 19, 2012 http://php.net/basename $baseName = basename( $foto ); simples :) Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Abril 19, 2012 Simples e perfeito :D Valeu mesmo Beraldo... Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Abril 26, 2012 Boa tarde. Consegui implementar facilmente essa classe com o swfuploader (plugin para upload multiplo de imagens). Tenho 1 dúvida. Estou trabalhando em galeria de fotos. Geralmente eu separo as fotos em pastas (cada vez que crio uma galeria crio uma pasta com o ID da galeria). Com essa classe eu conseguiria salvar as fotos dentro dessas pastas? Obrigado pela atenção. Compartilhar este post Link para o post Compartilhar em outros sites
Paulo Roberto Start Corp 1 Denunciar post Postado Maio 22, 2012 Fiz uma classe para manipulação de imagens. Ela salva imagens (de diretórios ou de um formulário - envio por POST), cria miniaturas (thumbnails) e insere logomarca (marca d'água). <?php /** * Arquivo com a classe \c ImgHandler. * @file class.ImgHandler.php */ /* * Exemplo de uso: * * $img = 'foto.jpg'; // foto que deverá ser salva/redimensionada * $ImgHandler = new ImgHandler(); * $foto = $ImgHandler->saveImg( $img ); * $ImgHandler->createThumb( $foto ); * $ImgHandler->insertLogo( $foto ); */ /* Definição de constantes que poderão ser usadas na chamada ao método insertLogo() */ defined( 'IMGHANDLER_LOGO_TOP_LEFT' ) || define( 'IMGHANDLER_LOGO_TOP_LEFT', 1 ); defined( 'IMGHANDLER_LOGO_TOP_RIGHT' ) || define( 'IMGHANDLER_LOGO_TOP_RIGHT', 2 ); defined( 'IMGHANDLER_LOGO_TOP_CENTER' ) || define( 'IMGHANDLER_LOGO_TOP_CENTER', 3 ); defined( 'IMGHANDLER_LOGO_BOTTOM_LEFT' ) || define( 'IMGHANDLER_LOGO_BOTTOM_LEFT', 4 ); defined( 'IMGHANDLER_LOGO_BOTTOM_RIGHT' ) || define( 'IMGHANDLER_LOGO_BOTTOM_RIGHT', 5 ); defined( 'IMGHANDLER_LOGO_BOTTOM_CENTER' ) || define( 'IMGHANDLER_LOGO_BOTTOM_CENTER', 6 ); defined( 'IMGHANDLER_LOGO_MIDDLE_LEFT' ) || define( 'IMGHANDLER_LOGO_MIDDLE_LEFT', 7 ); defined( 'IMGHANDLER_LOGO_MIDDLE_RIGHT' ) || define( 'IMGHANDLER_LOGO_MIDDLE_RIGHT', 8 ); defined( 'IMGHANDLER_LOGO_MIDDLE_CENTER' ) || define( 'IMGHANDLER_LOGO_MIDDLE_CENTER', 9 ); /** * A classe \c ImgHandler é responsável por copiar imagens (de um diretório ou de um formulário, por meio de envio por método POST), redimensioná-las e inserir a logomarca (marca d'água). * @class ImgHandler * @author Roberto Beraldo Chaiben (rbchaiben [at] gmail [dot] com) * @version 1.1 * @see http://www.php.net/manual/pt_BR/book.image.php * @see http://www.php.net/manual/pt_BR/features.file-upload.php */ class ImgHandler { /*=============================================*/ /*==== PROPRIEDADES DA CLASSE =========*/ /*=============================================*/ /** * Largura máxima das imagens, em pixels. * @private max_img_width */ private $max_img_width = 450; /** * Altura máxima das imagens, em pixels. * @private max_img_height */ private $max_img_height = 450; /** * Largura máxima das miniaturas (\em thumbnails), em pixels. * @private max_thumb_width */ private $max_thumb_width = 110; /** * Altura máxima das miniaturas (\em thumbnails), em pixels. * @private max_thumb_height */ private $max_thumb_height = 110; /** * Prefixo que diferencia uma miniatura (\em thumbnail) de sua imagem original. * @private thumb_prefix */ private $thumb_prefix = ''; /** * Sufixo que diferencia uma miniatura (\em thumbnail) de sua imagem original. * @private thumb_sufix */ private $thumb_sufix = '_thumb'; /** * Qualidade final da imagem (inteiro entre 0 e 100). * @note Esse valor só é usado em imagens JPEG. * @private img_quality */ private $img_quality = 80; /** * Qualidade final da miniatura (\e thumbnail) (inteiro entre 0 e 100). * @note Esse valor só é usado em imagens JPEG. * @private thumb_quality */ private $thumb_quality = 70; /** * Caminho para o arquivo da logomarca (marca d'água) que deve ser inserida nas imagens. * @private logo_file */ private $logo_file = 'logo.png'; /*==============================================*/ /*========= MÉTODOS DA CLASSE ==========*/ /*==============================================*/ /** * Salva a imagem, redimensionando-a, se ultrapassar as dimensões máximas permitidas. * @param filename Caminho para a imagem que deve ser salva. * @return Retorna o nome da imagem salva. * @note O nome final do arquivo da iamgem é gerado dinamicamente, a fim de evitar arquivos com nomes iguais e, consequentemente, sobreescrita de arquivos diferentes. */ public function saveImg( $filename ) { list( $largura, $altura ) = getimagesize( $filename ); // se as dimensões da imagem forem maiores que as permitidas, faz o redimensionamento dela. if ( $largura > $this->max_img_width || $altura > $this->max_img_height ) { return $this->ResizeImg( $filename ); } // gera um nome para a imagem. $novo_nome = $this->randName( $filename ); copy( $filename, $novo_nome ); return $novo_nome; } /*---------------------------------------------------*/ /** * Redimensiona uma imagem e a salva. * @param filename Imagem a ser redimensionada. * @return Retorna o nome da imagem salva. */ protected function ResizeImg( $filename ) { list( $largura, $altura ) = getimagesize( $filename ); $img_type = $this->getImgType( $filename ); // define largura e altura conforma o tamanho da imagem, // a fim de manter a proporção entre as dimensões if ( $largura > $altura) { $nova_largura = $this->max_img_width; $nova_altura = round( ($nova_largura / $largura) * $altura ); } elseif ( $altura > $largura ) { $nova_altura = $this->max_img_height; $nova_largura = round( ($nova_altura / $altura) * $largura ); } else { $nova_altura = $nova_largura = $this->max_img_width; } $src_img = call_user_func( 'imagecreatefrom' . $img_type, $filename ); $dst_img = imagecreatetruecolor( $nova_largura, $nova_altura ); imagecopyresampled( $dst_img, $src_img, 0, 0, 0, 0, $nova_largura, $nova_altura, $largura, $altura ); $nome_img = $this->randName( $filename ); // verifica se é JPEG // Se for, adiciona o terceiro parâmetro (img_quality) if ( $img_type == 'jpeg' ) { imagejpeg( $dst_img, $nome_img, $this->img_quality ); } else { call_user_func( 'image' . $img_type, $dst_img, $nome_img ); } imagedestroy( $src_img ); imagedestroy( $dst_img ); return $nome_img; } /*------------------------------------------------------*/ /** * Gera \em thumbnail de uma imagem. * @param filename Imagem da qual deve ser gerado o \em thumbnail. * @return Retorna o nome final do \em thumbnail. */ public function createThumb( $filename ) { list( $largura, $altura ) = getimagesize( $filename ); $img_type = $this->getImgType( $filename ); // define largura e altura conforma o tamanho da imagem, // a fim de manter a proporção entre as dimensões if ( $largura > $altura) { $nova_largura = $this->max_thumb_width; $nova_altura = round( ($nova_largura / $largura) * $altura ); } elseif ( $altura > $largura ) { $nova_altura = $this->max_thumb_height; $nova_largura = round( ($nova_altura / $altura) * $largura ); } else { $nova_altura = $nova_largura = $this->max_thumb_width; } $src_img = call_user_func( 'imagecreatefrom' . $img_type, $filename ); $dst_img = imagecreatetruecolor( $nova_largura, $nova_altura ); imagecopyresampled( $dst_img, $src_img, 0, 0, 0, 0, $nova_largura, $nova_altura, $largura, $altura ); $ext = end( explode( '.', $filename ) ); $nome_arr = pathinfo( $filename ); $nome_img = dirname( $filename) . DIRECTORY_SEPARATOR . $this->thumb_prefix . $nome_arr['filename'] . $this->thumb_sufix . '.' . $ext; // verifica se é JPEG // Se for, adiciona o terceiro parâmetro (thumb_quality) if ( $img_type == 'jpeg' ) { imagejpeg( $dst_img, $nome_img, $this->thumb_quality ); } else { call_user_func( 'image' . $img_type, $dst_img, $nome_img ); } imagedestroy( $src_img ); imagedestroy( $dst_img ); return $nome_img; } /*----------------------------------------------------------*/ /** * Gera um novo nome para a imagem, evitando que haja arquivos com os mesmos nomes. * @param filename Nome original do arquivo. * @return Retorna o novo nome do arquivo. * @note Se for passado um caminho completo para o método (com nomes de diretórios), o retorno conterá o caminho completo também, alterando apenas o nome do arquivo, sem modificar os nomes dos diretórios. */ protected function randName( $filename ) { $tipo = getimagesize( $filename ); $tipo = $tipo[2]; switch ( $tipo ) { case 1: $ext = 'gif'; break; case 2: $ext = 'jpg'; break; case 3: $ext = 'png'; break; default: $ext = false; } if ( !$ext ) { return false; } $novo_nome = strtolower( str_replace( ".", "", uniqid( time(), true) ) ); $nome = ( $novo_nome . "." . $ext ); return dirname( $filename ) . DIRECTORY_SEPARATOR . $nome; } /*---------------------------------------------*/ /** * Insere logomarca (marca d'água) numa imagem. * @param filename Caminho para o arquivo da imagem na qual deve ser inserida a logomarca (marca d'água). * @param logoBorder Distância que a logomarca (marca d'água) ficará da borda da imagem, em pixels. Por padrão, essa distância é de 5 pixels. * @param logoPosition Posição em que deverá ser inserida a logomarca (marca d'água). Pode ser um dos seguintes valores (constantes): * @li IMGHANDLER_LOGO_TOP_LEFT -> Insere no topo esquerdo; * @li IMGHANDLER_LOGO_TOP_RIGHT -> Insere no topo direito; * @li IMGHANDLER_LOGO_TOP_CENTER -> Insere no topo central; * @li IMGHANDLER_LOGO_BOTTOM_LEFT -> Insere na base esquerda; * @li IMGHANDLER_LOGO_BOTTOM_RIGHT -> Insere na base direita; * @li IMGHANDLER_LOGO_BOTTOM_CENTER -> Insere na base central; * @li IMGHANDLER_LOGO_MIDDLE_LEFT -> Insere na pate central vertical, à esquerda; * @li IMGHANDLER_LOGO_MIDDLE_RIGHT -> Insere na pate central vertical, à direita; * @li IMGHANDLER_LOGO_MIDDLE_CENTER -> Insere na pate central vertical, centrailzado horizontalmente; * * * Por padrão, a logomarca é inserida na base direita. * * @return Retorna TRUE em caso de sucesso e FALSE em caso de erro. */ public function insertLogo( $filename, $logoBorder = 5, $logoPosition = NULL ) { if ( !file_exists( $filename ) ) { echo "Arquivo \"" . $filename . "\" não encontrado"; return false; } if ( !is_int( $logoBorder ) || $logoBorder < 0 ) { $logoBorder = 0; } if ( $logoPosition == NULL ) { // assume o valor padrão $logoPosition = IMGHANDLER_LOGO_BOTTOM_RIGHT; } $logoBorder++; $logo_type = $this->getImgType( $this->logo_file ); $img_type = $this->getImgType( $filename ); if ( !$logo_type || !$img_type ) { return false; } $img = call_user_func( 'imagecreatefrom' . $img_type, $filename ); $logo = call_user_func( 'imagecreatefrom' . $logo_type, $this->logo_file ); // dimensões das imagens $img_size = array( imagesx( $img ), imagesy( $img ) ); $logo_size = array( imagesx( $logo ), imagesy( $logo ) ); // ponto onde deverá ser inserida a logomarca switch ( $logoPosition ) { case IMGHANDLER_LOGO_TOP_LEFT: $x = $logoBorder; $y = $logoBorder; break; case IMGHANDLER_LOGO_TOP_RIGHT: $x = $img_size[0] - ( $logo_size[0] + $logoBorder ); $y = $logoBorder; break; case IMGHANDLER_LOGO_TOP_CENTER: $x = ( $img_size[0] / 2 - ( $logo_size[0] / 2 ) ) - $logoBorder; $y = $logoBorder; break; case IMGHANDLER_LOGO_BOTTOM_LEFT: $x = $logoBorder; $y = $img_size[1] - ( $logo_size[1] + $logoBorder ); break; case IMGHANDLER_LOGO_BOTTOM_RIGHT: $x = $img_size[0] - ( $logo_size[0] + $logoBorder ); $y = $img_size[1] - ( $logo_size[1] + $logoBorder ); break; case IMGHANDLER_LOGO_BOTTOM_CENTER: $x = ( $img_size[0] / 2 - ( $logo_size[0] / 2 ) ) - $logoBorder; $y = $img_size[1] - ( $logo_size[1] + $logoBorder ); break; case IMGHANDLER_LOGO_MIDDLE_LEFT: $x = $logoBorder; $y = ( $img_size[1] / 2 - ( $logo_size[1] / 2 ) ) - $logoBorder; break; case IMGHANDLER_LOGO_MIDDLE_RIGHT: $x = $img_size[0] - ( $logo_size[0] + $logoBorder ); $y = ( $img_size[1] / 2 - ( $logo_size[1] / 2 ) ) - $logoBorder; break; case IMGHANDLER_LOGO_MIDDLE_CENTER: $x = ( $img_size[0] / 2 - ( $logo_size[0] / 2 ) ) - $logoBorder; $y = ( $img_size[1] / 2 - ( $logo_size[1] / 2 ) ) - $logoBorder; break; default: $x = $y = false; } if ( !$x || !$y ) { return false; } $logo_point = array( $x, $y ); imagecopy( $img, $logo, $logo_point[0], $logo_point[1], 0, 0, $logo_size[0], $logo_size[1] ); // verifica se é JPEG // Se for, adiciona o terceiro parâmetro (thumb_quality) if ( $img_type == 'jpeg' ) { imagejpeg( $img, $filename, $this->img_quality ); } else { call_user_func( 'image' . $img_type, $img, $filename ); } imagedestroy( $logo ); imagedestroy( $img ); return true; } /*----------------------*/ /** * Identifica o tipo de uma imagem. * @param filename Caminho da imagem. * @return Retorna o tipo da imagem (gif, jpeg ou png). */ protected function getImgType( $filename ) { $type = getimagesize( $filename ); if ( $type == FALSE || !is_array( $type ) ) { return false; } switch ( $type[2] ) { case 1: // GIF $img_type = 'gif'; break; case 2: // JPEG $img_type = 'jpeg'; break; case 3: // PNG $img_type = 'png'; break; default: $img_type = false; } return $img_type; } /*-----------------------------*/ /** * Modifica as dimensões máximas das iamgens. * @param width Largura máxima das imagens. * @param height Altgura máxima das imagens. */ public function setMaxImgSize( $width, $height ) { if ( is_integer( $width ) && is_integer( $height ) ) { $this->max_img_width = $width; $this->max_img_height = $height; } } /*------------------------*/ /** * Modifica as dimensões máximas das miniaturas (thumbnails). * @param width Largura máxima das miniaturas (thumbnails). * @param height Altgura máxima das miniaturas (thumbnails). */ public function setMaxThumbSize( $width, $height ) { if ( is_integer( $width ) && is_integer( $height ) ) { $this->max_thumb_width = $width; $this->max_thumb_height = $height; } } /*------------------------*/ /** * Determina o prefixo das miniaturas (thumbnails) * @param prefix Prefixo das miniaturas (thumbnails) */ public function setThumbPrefix( $prefix ) { $this->thumb_prefix = $prefix; } /*----------------------------*/ /** * Determina o sufixo das miniaturas (thumbnails) * @param sufix Sufixo das miniaturas (thumbnails) */ public function setThumbSufix( $sufix ) { $this->thumb_sufix = $sufix; } /*----------------------------*/ /** * Define a qualidade final da imagem. * @note Esse valor só é usado em imagens JPEG. * @param img_quality Qualidade final da imagem. Deve ser um inteiro entre 0 e 100. */ public function setImgQuality( $img_quality ) { if ( !is_int( $img_quality ) || $img_quality < 0 || $img_quality > 100 ) { return false; } $this->img_quality = $img_quality; } /*-------------------------*/ /** * Define a qualidade final da miniatura (\e thumbnail). * @note Esse valor só é usado em imagens JPEG. * @param thumb_quality Qualidade final da miniatura (\e thumbnail). Deve ser um inteiro entre 0 e 100. */ public function setThumbQuality( $thumb_quality ) { if ( !is_int( $thumb_quality ) || $thumb_quality < 0 || $thumb_quality > 100 ) { return false; } $this->thumb_quality = $thumb_quality; } /*-------------------------*/ /** * Altera o caminho do arquivo da logomarca (marca d'água) que deve sr inserida nas imagens. * @param logo_file Caminho para o arquivo da logomarca (marca d'água). */ public function setLogoFile( $logo_file ) { if ( !file_exists( $logo_file ) ) { echo "Arquivo \"" . $logo_file . "\" não encontrado. Retornando ao valor padrão."; } else { $this->logo_file = $logo_file; } } /*---------------------*/ } ?> O exemplo de uso está no começo do arquivo, na forma de comentário. As tags da documentação são direcionadas ao Doxygen, que possui muito mais opções que o PhpDoc. Por isso há umas tags não existentes no PhpDoc. Gerei a documentação em HTML e em PDF para exemplificar. O arquivo ZIP abaixo possui o código-fonte e as documentações completas: http://www.inf.ufpr....sImgHandler.zip Façam bom uso da classe e mantenham os créditos, por favor. Abraços, Beraldo Joia... Como eu faço inset no db <? // Recebendo Variaveis para Cadastro do Imovel // Dados do Imovel $tipo_imovel = $_POST[tipo]; // Ex: Casa, Apartamento, tec... $finalidade = $_POST[finalidade]; // Ex: Venda ou Aluguel $suite = $_POST[suite]; // Numero de quartos com suites $garagem = $_POST[garagem]; // Numero de Garagens $area = $_POST[area]; // Area Construida do Imovel $areaT = $_POST[areaT]; // Area Total ex: tamanho total do lote $dorm = $_POST[dorm]; // Numero de quartos $wc = $_POST[wc]; // Numero de Banheiros $lavanderia = $_POST[lavanderia]; // lavanderia $valor1 = $_POST[preco]; // Recebe Valores $valor1 = $valor1 = str_replace(".", "", "$valor1"); $valor1 = str_replace(",", ".", "$valor1"); $condpgto = $_POST[condpgto]; // Formas de pagamento $faseobra = $_POST[faseobra]; // Se for uma obra informar andamento $titulo = $_POST[titulo]; // Titulo do Imóvel $obs = $_POST[obs]; // Campo Detalhes $destaque = $_POST[destaque]; // Indica se o imovel esta em destaque // Endereço do Imovel $cep = $_POST[cep]; // CEP do Imovel $lagradouro = $_POST[lagradouro]; // Rua do Imovel $numero = $_POST[numero]; // Numero do endereço do imovel $complemento = $_POST[complemento]; // complemento ex: quadra e lote $uf = $_POST[uf]; // Estado $cidade = $_POST[cidade]; // cidade do imovel $bairro = $_POST[bairro]; // bairro do imovel // Corretor $corretor = $_POST[corretor]; // Corretor do Imóvel $fone_corretor = $_POST[fone_corretor]; // Telefone do Corretor // Recebendo foto Destaque $imagem = $_POST[foto]; $pasta = "teste_pasta"; if ($destaque != "sim") { include ("class_upload.php"); } else { include ("class_upload.php"); } $NomedasFotos = explode(';',$NomeTodasFotos); $sql = mysql_query ("INSERT INTO `imoveis` ( `id` , `titulo` , `tipo` , `finalidade` , `dorm` , `suite` , `wc` , `lavanderia` , `garagem` , `area` , `areaconstruida` , `corretor` , `fone_corretor` , `preco` , `condpgto` , `faseobra` , `endereco` , `numero` , `bairro` , `cidade` , `estado` , `complemento` , `observacoes` , `destaque` , `foto1` , `foto2` , `foto3` , `foto4` , `foto5` , `foto6` , `foto7` , `foto8` , `foto9` , `foto10` ) VALUES ('', '$titulo', '$tipo_imovel', '$finalidade', '$dorm', '$suite', '$wc', '$lavanderia', '$garagem', '$areaT', '$area', '$corretor', '$fone_corretor', '$valor1', '$condpgto', '$faseobra', '$lagradouro', '$numero', '$bairro', '$cidade', '$uf', '$complemento', '$obs', '$destaque', '$NomedasFotos[0]', '$NomedasFotos[1]', '$NomedasFotos[2]', '$NomedasFotos[3]', '$NomedasFotos[4]', '$NomedasFotos[5]', '$NomedasFotos[6]', '$NomedasFotos[7]', '$NomedasFotos[8]', '$NomedasFotos[9]' )"); if ($sql) { echo "<script type='text/javascript'>alert('Imovel Cadastrado!!!');</script>"; } else {echo "<script type='text/javascript'>alert('Erro ao cadastrar Imovel!!!');</script>";} ?> Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 22, 2012 Como eu faço inset no db não entendi a dúvida. seu código já insere no BD, certo? Qual é a dúvida, então? Compartilhar este post Link para o post Compartilhar em outros sites
PPD 0 Denunciar post Postado Maio 9, 2014 Desculpem se estou ressuscitando este tópico, mas experimentei esta classe e ela é muito boa, gostaria de parabenizar o autor pelo exelente trabalho, Só tenho uma pequena dúvida, se em alguns casos eu precisar especificar o nome do aquivo a ser salvo, ao envés de deixar ramdomico, como faço? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Eduardo Giullyanny 1 Denunciar post Postado Abril 19, 2015 estou ressucitando este post, mas eu usava e algumas imagens estão aparecendo isso ainda, veja o erro: Porque acontece isso: Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in E:\Vhosts\camarasantafedegoias.go.gov.br\httpdocs\painel\php\class.imghandler.php on line 156 Warning: imagecopyresampled(): supplied argument is not a valid Image resource in E:\Vhosts\camarasantafedegoias.go.gov.br\httpdocs\painel\php\class.imghandler.php on line 158 Warning: imagejpeg(): supplied argument is not a valid Image resource in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 165 Warning: imagedestroy(): supplied argument is not a valid Image resource in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 172 Warning: getimagesize(uploads/teste/14293998115532e903d235d384331670.jpg) [function.getimagesize]: failed to open stream: No such file or directory in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 185 Warning: getimagesize(uploads/teste/14293998115532e903d235d384331670.jpg) [function.getimagesize]: failed to open stream: No such file or directory in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 397 Warning: call_user_func(imagecreatefrom) [function.call-user-func]: First argument is expected to be a valid callback in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 200 Warning: imagecopyresampled(): supplied argument is not a valid Image resource in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 204 Warning: call_user_func(image) [function.call-user-func]: First argument is expected to be a valid callback in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 216 Warning: imagedestroy(): supplied argument is not a valid Image resource in E:\Vhosts\httpdocs\painel\php\class.imghandler.php on line 219 Consegui fazer um esquema aqui: neste trexo, os comentario não existem, e o que fiz esta comentado. Ficou bom este ajuste técnico. rsrs if ($largura > $altura) { $nova_largura = $this->max_img_width; //$nova_largura = $this->max_img_width==0? 600 : $this->max_img_width; $nova_altura = round(($nova_largura / $largura) * $altura); } elseif ($altura > $largura) { $nova_altura = $this->max_img_height; //$nova_altura = $this->max_img_height==0? 600 : $this->max_img_height; $nova_largura = round(($nova_altura / $altura) * $largura); } else { $nova_altura = $nova_largura = $this->max_img_width; } Compartilhar este post Link para o post Compartilhar em outros sites