Fagner 1 Denunciar post Postado Fevereiro 11, 2004 Quero gerar thumbs usando o codigo abaixo na condição da figura buscada começar com um determinado nome exemplo no diretorio tenho big_foto01.jpg e thumb_foto01.jpg quero que a condição faça com que seje gerado apenas a thumb do arquivo que contiver a palavra "big" no inicio. CODIGO ================== $handle = opendir($dir); $ext = "jpg"; $indice = 0; $ipp = 12; while (false !== ($file = readdir($handle))) { $pathdata = pathinfo($file); if (!is_dir($file) && ($pathdata["extension"] == strtolower($ext)) || ($pathdata["extension"] == strtoupper($ext))) { $imagens[$indice] = $file; $indice++; }}$pagina = 1;if ($_GET['pg']) $pagina = $_GET['pg'];$paginas = ceil(count($imagens) / $ipp);$inicio = $pg * $ipp;for ($i = $inicio; $i < ($inicio + $ipp); $i++)if($imagens[$i] != ""){ $imagem = "$dir/$imagens[$i]"; // Tipo: JPG $thumbnail = explode('.', $imagem); $thumbnail = $thumbnail[0]."_thumbnail.jpg"; $x = 70; // Largura $y = 52; // Altura $img_origem = ImageCreateFromJPEG($imagem); $origem_x = imagesx($img_origem); // Largura $origem_y = imagesy($img_origem); // Altura if($origem_x > $origem_y) { // Se a largura for maior que a altura $final_x = $x; // A largura será a do thumbnail $final_y = floor($x * $origem_y / $origem_x); // A altura é calculada $f_x = 0; // Colar no x = 0 $f_y = round(($y / 2) - ($final_y / 2)); // Centralizar a imagem no meio y do thumbnail } else { // Se a altura for maior ou igual à largura $final_x = floor($y * $origem_x / $origem_y); // Calcula a largura $final_y = $y; // A altura será a do thumbnail $f_x = round(($x / 2) - ($final_x / 2)); // Centraliza a imagem no meio x do thumbnail $f_y = 0; // Colar no y = 0 } $img_final = ImageCreateTrueColor($x,$y); ImageCopyResized($img_final, $img_origem, $f_x, $f_y, 0, 0, $final_x, $final_y, $origem_x, $origem_y); ImageJPEG($img_final, $thumbnail); ImageDestroy($img_origem); ImageDestroy($img_final);?> <a href="zoom.php?dir=<? echo "$dir";?>&foto=<? echo "$imagens[$i]";?>" target="exibe_foto"> <img src="<? echo "$thumbnail";?>" hspace="1" vspace="1" border="1"></a> <? }?> Muitissimo obrigado pela ajuda... Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Fevereiro 11, 2004 Não sei bem onde está o nome da imagem, mas por exemplo, se estiver nesta variável $img pode usar assim: $img="big_001.jpg";if(substr($img,0,3)=='thu') { echo "eh thumb";} else { echo "nao eh thumb";} Compartilhar este post Link para o post Compartilhar em outros sites
Fagner 1 Denunciar post Postado Fevereiro 12, 2004 beleza agora funfa uma ultima duvida esse codigo verifica somente as tres primeiras letras do arquivo, tipo nao teria como ele ler todo o nome do arquivo e vericar o nome contiver algo com thumbs ele nao escreve senao escreve.Obs. so chato neh.. puts.. :lol: B) :P Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Fevereiro 12, 2004 Procure em br.php.net por strpos().Ela retorna a posição de uma string dentro de outra. Compartilhar este post Link para o post Compartilhar em outros sites
wxkj 0 Denunciar post Postado Fevereiro 13, 2004 mas..se você quer gerar apenas dos arquivos que começam com "big"não é mais simples usar uma condição comparando o "big" ??$img="big_001.jpg";if(substr($img,0,3)=='big') { // gera o thumb} Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Fevereiro 13, 2004 mas..se você quer gerar apenas dos arquivos que começam com "big"não é mais simples usar uma condição comparando o "big" ??$img="big_001.jpg";if(substr($img,0,3)=='big') { // gera o thumb} pois é... eu também acho q vai complicar.$img="big_001.jpg";if(substr($img,0,3)=='thu') { echo "eh thumb";} else { echo "nao eh thumb";} Compartilhar este post Link para o post Compartilhar em outros sites
Keitaro 0 Denunciar post Postado Fevereiro 13, 2004 pra q complicar, cria uma pasta thumb dentro das imagens originais... ambas terao o mesmo nome... so basta linkar os thumbs na pasta e o original na raiz...pra q ficar usando if's, isso pode funcionar de um jeito, de outro n.. sempre precisara de remendos... n vale complicar o codigo... ;) Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Fevereiro 13, 2004 Grande Keitaro ! Muito bem observado ! Compartilhar este post Link para o post Compartilhar em outros sites
wxkj 0 Denunciar post Postado Fevereiro 13, 2004 verdade eu faço assim como o keitaro falouMas o Fagner descreveu que quer tudo no mesmo diretório.Pelo menos foi o que eu entendi.Bom.. o cara é quem decide. Compartilhar este post Link para o post Compartilhar em outros sites
webvp 0 Denunciar post Postado Fevereiro 16, 2004 você além de guardar os arquivos em pastas separadas (para uma melhor organização), fica fácil também de inserir no próprio código de inserção ou atualização de imagens a verificação da existência de um arquivo com o mesmo nome.Desta forma você terá economia em disco sem se preocupar em mais tarde ter que selecionar o(s) arquivo(s) órfãos e apagá-los Compartilhar este post Link para o post Compartilhar em outros sites