Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Primeiro eu gostaria de agradecer aos membros deste fórum que participam ativamente e que me ajudaram muito...
Partindo de um script do Fábyo, http://forum.imasters.com.br/public/style_emoticons/default/joia.gif fiz uma adaptação aos meus propósitos, ainda falta muita coisa para realmente ficar bom, mas mas estou muito contente com o resultado...
Este script redimenciona, cria os thumbs das fotos, salva os nomes no db e salva os comentários....
index.php
<?require_once "class_upload.php";$upload = new Upload();$upload->Envia_Arquivo();?><html><head><title>Upload</title><script> function Contador(field,MaxLength) { obj = document.all(field); if (MaxLength !=0) { if (obj.value.length > MaxLength) { obj.value = obj.value.substring(0, MaxLength); } } document.form1.contador.value = obj.value.length + '/300'; }</script><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><form action="index.php" method="post" enctype="multipart/form-data" name="form1"> <textarea name="mensagem" method = "post" cols="41" rows="7" class="frm_input" id="descricao" style="caixa" onKeyUp="return Contador('descricao',300);"></textarea><BR> <input name="contador" type="text" disabled="disabled" class="caixa2" id="contador" size="7" maxlength="7"> <input type="file" name="arquivo"> <input type="submit" name="Submit" value="Enviar"></form></body></html>
funções.php
<?php/*Fabyo Guimaraes de Oliveira */function reduz_imagem($img, $max_x, $max_y, $nome_foto) {//pega o tamanho da imagem ($original_x, $original_y)list($width, $height) = getimagesize($img);$original_x = $width;$original_y = $height;// se a largura for maior que alturaif($original_x > $original_y) { $porcentagem = (100 * $max_x) / $original_x; }else { $porcentagem = (100 * $max_y) / $original_y; }$tamanho_x = $original_x * ($porcentagem / 100);$tamanho_y = $original_y * ($porcentagem / 100);$image_p = imagecreatetruecolor($tamanho_x, $tamanho_y);$image = imagecreatefromjpeg($img);imagecopyresampled($image_p, $image, 0, 0, 0, 0, $tamanho_x, $tamanho_y, $width, $height);return imagejpeg($image_p, $nome_foto, 100);}?>
class_upload.php
<?set_time_limit(0);include "funcoes.php";class Upload{ var $arquivo = ""; var $erro = array ( "0" => "upload execultado com sucesso!", "1" => "O arquivo é maior que o permitido pelo Servidor", "2" => "O arquivo é maior que o permitido pelo formulario", "3" => "O upload do arquivo foi feito parcialmente", "4" => "Não foi feito o upload do arquivo" ); function Verifica_Upload() { $this->arquivo = isset($_FILES['arquivo']) ? $_FILES['arquivo'] : FALSE; if(!is_uploaded_file($this->arquivo['tmp_name'])) { return false; } $get = getimagesize($this->arquivo['tmp_name']); if($get["mime"] != "image/jpeg") { echo "<span style=\"color: white; border: solid 1px; background: red;\">Esse foto nao é uma imagem valida</span>"; exit; } return true; } function Envia_Arquivo() { if($this->Verifica_Upload()) { $this->gera_fotos(); return true; } else { echo "<span style=\"color: white; border: solid 1px; background: red;\">".$this->erro[$this->arquivo['error']]."</span>"; } } function gera_fotos() { $diretorio = "fotos/"; if(!file_exists($diretorio)) { mkdir($diretorio); } $nome_foto = "imagem_".time().".jpg"; $nome_thumb = "thumb_".time().".jpg"; //determino uma resolução maxima e se a imagem for maior ela sera reduzida reduz_imagem($this->arquivo['tmp_name'], 400, 300, $diretorio.$nome_foto); //passo o tamanho da thumbnail reduz_imagem($this->arquivo['tmp_name'], 100, 70, $diretorio.$nome_thumb); echo "<span style=\"color: white; border: solid 1px; background: blue;\">".$this->erro[$this->arquivo['error']]."</span>"; // -Banco de Dados - // $conexao = mysql_connect("localhost","root",""); mysql_select_db("classificados"); $text = $_POST['mensagem']; $sql = "insert INTO thumbs Values ('','$nome_thumb','$nome_foto','$text')"; $query = mysql_query($sql); mysql_close($conexao); } }?>
lista.php
<?php$host = "localhost";$user = "root";$senha = "";$db= "nome_do_banco"; $tabela = "nome_da_tabela";$conn = mysql_connect($host,$user,$senha);$banco = mysql_select_db($db);$sql=mysql_query("select * from $tabela order by id_thumbs desc") or die(mysql_error()); echo "<table width=100 border=0>";$total = mysql_num_rows($sql);?><?php$colunas = "3";?><?phpif ($total>0) {for($i=0;$i<$total;$i++) {if (($i%$colunas)==0) {echo "<tr>";}?><?php$dados = mysql_fetch_array($sql);$thumbs = $dados["thumbs"];$imagem = $dados["imagem"];$text = $dados["mensagem"];print "<td><table width=\"140\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><a href=\"fotos/$imagem\" target='_blank'><img src=\"fotos/$thumbs\"></a><br>$text</td></tr></table></td>";}} else {echo "Nenhum registro encontrado";}?>
Mantive os comentários do Fábyo, as alterações ficam por conta da inserção no db, listagem em colunas e os comentários....espero que ajude alguém, lembrando que sou iniciante, manerem nas críticas...hehehhehe
Carregando comentários...