Sou iniciante no php e esse eh meu primeiro codigo. Meu objetivo é criar albuns dinâmicamente neste site:www.baladacarioca.net
Depois de muita pesquisa consegui criar o código para o upload das imagens, com, validação do tipo da imagem, verifica se ja existe na página, redimeniona a imagem, cria os thumbs, e insere logo.
Sendo que preciso criar os albuns dinâmicamente.. Preciso que ao criar o album crie uma página para fazer o upload das fotos e que crie uma pasta para cada album.
espero que alguem possa me ajudar.
Vou colocar o código do upload aqui:
Pg para cadastrar a imagem:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <form id="form1" name="form1" method="post" enctype="multipart/form-data" action="funcao_img.php"> <input name="arquivo" type="file" id="textfield" size="70" /> <input type="submit" name="enviar" id="enviar" value="enviar" /> </form> <hr/> <?php include "connect_db.php"; $sql = mysql_query("SELECT * FROM bld_upload_img"); while($linha = mysql_fetch_array($sql)){ $id = $linha['id']; $foto = $linha['foto']; ?> <div style="width:198px; height:auto; float:left; margin:20px 0 0 5px;"> <a href="imagens/albuns/<?php echo $foto ?>"><img src="imagens/albuns/thumbs/<?php echo $foto ?>" /></a> <a href="excluir.php?id=<?php echo $id?>">Excluir Imagem</a> </div> <?php } ?> </body> </html>
---------------------------------------------------------
Página PHP para tratar a imagem:
<?php if(is_file($_FILES['arquivo']['tmp_name'])){ $erro = array(); $img_file = $_FILES['arquivo']; $tmp = $_FILES['arquivo']['tmp_name'];// pega temporário $img_nome = $_FILES['arquivo']['name'];//pega nome $img_nome = str_replace(" ","_",$img_nome); $img_nome = str_replace("ã","a",$img_nome); $img_nome = str_replace("á","a",$img_nome); $img_nome = str_replace("à","a",$img_nome); $img_nome = str_replace("ê","e",$img_nome); $img_nome = str_replace("è","e",$img_nome); $img_nome = str_replace("é","e",$img_nome); $img_nome = str_replace("í","i",$img_nome); $img_nome = str_replace("ó","o",$img_nome); $img_nome = str_replace("õ","o",$img_nome); $img_nome = str_replace("ç","c",$img_nome); $img_nome = strtolower($img_nome); $img_tipo = $_FILES['arquivo']['type']; $img_size = $_FILES['arquivo']['size']; $diretorio = "imagens/albuns"; $tamanho_max = "8388608"; $pega_tamanho = getimagesize($tmp); //tamanho vertial $largura_vert = "490"; //tamanho horizonta $largura_hori = "700"; $count_img = count($img_nome); if(!eregi("image\/(jpg|jpeg|pjpeg)$", $img_tipo)){ echo " <META HTTP-EQUIV=REFRESH CONTENT='0; URL=cadastrar_foto.php'> <script type=\"text/javascript\"> alert(\"Formato do arquivo inválido. Insira uma imagem de formato : JPG, PNG , GIF\"); </script> "; $erro[] = "Formato do arquivo inválido. Insira uma imagem de formato : JPG, PNG , GIF"; }else{ if(file_exists("imagens/albuns/$img_nome")) { echo " <META HTTP-EQUIV=REFRESH CONTENT='0; URL=cadastrar_foto.php'> <script type=\"text/javascript\"> alert(\"Arquivo existe\"); </script> "; $erro[] = "Arquivo existe"; } if($img_size > $tamanho_max ) { echo " <META HTTP-EQUIV=REFRESH CONTENT='0; URL=cadastrar_foto.php'> <script type=\"text/javascript\"> alert(\"Arquivo ultrapassou 8mb\"); </script> "; } } if(sizeof($erro)) { echo " <META HTTP-EQUIV=REFRESH CONTENT='0; URL=cadastrar_foto.php'> <script type=\"text/javascript\"> alert(\"VOltar a pgde upload\"); </script> "; }else{ if($pega_tamanho[0] > $pega_tamanho[1]) // verifica se a imagem é horizontal { $img = imagecreatefromjpeg($tmp); $x = imagesx($img); $y = imagesy($img); $altura = ($largura_hori * $y)/$x; $nova = imagecreatetruecolor($largura_hori, $altura); imagecopyresampled($nova, $img, 0, 0, 0, 0, $largura_hori, $altura, $x, $y); imagedestroy($img); $logo = imagecreatefrompng('imagens/logo-galeria.png'); $logox = imagesx($logo); $logoy = imagesy($logo); $localx = $largura_hori-200; $localy = $altura-112; imagecopyresampled($nova,$logo,10,$localy,0,0,190,110,$logox, $logoy); imagejpeg($nova, "$diretorio/$img_nome",90); imagedestroy($nova); // CRIANDO THUMBS $img_mini = imagecreatefromjpeg($tmp); $x_mini = imagesx($img_mini); $y_mini = imagesy($img_mini); $altura_mini = (198 * $y_mini)/$x_mini; $nova_mini = imagecreatetruecolor(198, $altura_mini); imagecopyresampled($nova_mini, $img_mini, 0, 0, 0, 0, 198, $altura_mini, $x_mini, $y_mini); imagejpeg($nova_mini, "imagens/albuns/thumbs/$img_nome",90); imagedestroy($img_mini); imagedestroy($nova_mini); include "connect_db.php"; $sql = mysql_query("INSERT INTO bld_upload_img (foto) value ('$img_nome')"); header("Location: cadastrar_foto.php"); }if($pega_tamanho[1] > $pega_tamanho[0]) { $img = imagecreatefromjpeg($tmp); $x = imagesx($img); $y = imagesy($img); $altura = ($largura_vert * $y)/$x; $nova = imagecreatetruecolor($largura_vert, $altura); imagecopyresampled($nova, $img, 0, 0, 0, 0, $largura_vert, $altura, $x, $y); imagedestroy($img); $logo = imagecreatefrompng('imagens/logo-galeria.png'); $logox = imagesx($logo); $logoy = imagesy($logo); $localx = $largura_hori-200; $localy = $altura-112; imagecopyresampled($nova,$logo,10,$localy,0,0,190,110,$logox, $logoy); imagejpeg($nova, "$diretorio/$img_nome",90); imagedestroy($nova); // CRIANDO THUMBS $img_mini = imagecreatefromjpeg($tmp); $x_mini = imagesx($img_mini); $y_mini = imagesy($img_mini); $altura_mini = (198 * $y_mini)/$x_mini; $nova_mini = imagecreatetruecolor(198, 131); imagecopyresampled($nova_mini, $img_mini, 0, 0, 0, 0, 198, $altura_mini, $x_mini, $y_mini); //imagecopy($nova_mini, $img_mini, 0, 0, 198, 131, $x_mini, $y_mini); imagejpeg($nova_mini, "imagens/albuns/thumbs/$img_nome",90); imagedestroy($img_mini); imagedestroy($nova_mini); include "connect_db.php"; $sql = mysql_query("INSERT INTO bld_upload_img (foto) value ('$img_nome')"); header("Location: cadastrar_foto.php"); } } }else{ header("Location:cadastrar_foto.php"); } ?>