Antes de começar meu tutorial sobre o mural de fotos, vou contar uma pequena histórinha. Em 2004 foi o casamento do meu irmão do meio, e resolvi presentear os noivos com um site álbum de fotos. Na época tinha muito pouco conhecimento em PHP, e o site foi praticamente inteiro em HTML, com excesão dos comentários. Como tinha pouca experiência, inseri o código inteiro dos links das fotos na mão, passei 2 dias fazendo isso. Alguns anos mais tarde, com mais experiência, resolvi reformular alguns sites antigos e o do meu irmão foi um deles. No primeiro momento pensei em cadastrar todas as fotos em um banco de dados mas isso levaria tempo, porque eram muitas fotos. Como as fotos estavam devidamente ordenadas por números, pensei em outra alternativa: Abrir as pastas das fotos.
Veja o código simplificado abaixo:
<?$dir=$_GET["pasta"];if($folder=opendir("$dir/fotos/mini")){$i=1;while(($arquivos=readdir($folder))!=false){if($arquivos=="." or $arquivos==".."
or $arquivos=="Thumbs.db")continue;{if($i<10)$i="0".$i;$lista.="<li><a href='popup.php?Foto=$i
&Pasta=".$dir."' class='popup'>
<img src='".$dir."/fotos/mini/foto".$i."mini.jpg
alt='' border='0'/></a></li></n>";$i++;}}closedir($folder);}?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html>
<head>
<title><?=$dir?></title>
</head>
<body>
<ul>
<?=$lista?>
</ul>
</body>
</html>
Onde a variável $dir (linha 2) recebe uma variável GET que corresponde ao nome da pasta que contém as imagens. A estrutura das imagens nas pastas é a mesma, ou seja, as imagens tem o mesmo padrão de nome. Após receber o nome da pasta, nós vamos abri-la com a função opendir() (linha 3),ler todos os arquivos do diretório com a função readir() e jogar esse conteúdo num loop while (linha 6).Depois é so ir concatenando o conteúdo numa variavel, no nosso caso a variável $lista(linha 10) e mandar imprimir no html (linha 27). Não podemos esquecer de fechar o diretório com a função closedir() (linha 17), pois desta forma a memória que foi usada para abrir o diretório será liberada e nosso código ficará mais leve para ser carregado. E pronto, temos uma solução simples de mural sem o uso de uma banco de dados. Espero que tenham gostado, um grande abraço.
Muita gente já escreveu suas previsões para 2008, mas eu vou escrever no último dia do ano de 2007, só para contrariar um pouquinho (bem, na verdade foi por falta de tempo mesmo).
Para 2008 eu espero que menos aviões caiam, ou melhor, que nenhum avião caia, porque é muito triste ver tanta gente morrer de uma forma tão brusca;
Que haja menos corrupção no nosso país e que desta vez nós acertamos nos governantes que serão eleitos;
Que o Brasil ganhe muitas medalhes nas olimpíadas de Pequim;
Que a tecnologia continue a se expandir em nosso país com a TV digital e a rede 3G;
Que não falte trabalho para os profissionais de TI e para todos os outros brasileiros;
E principalmente que todos nós tenhamos saúde, paz, felicidade e dindin no bolso, por que nós não somos de ferro não é mesmo?
Um grande abraço e um super feliz 2008.
Há algum tempo, quando postei o vídeo do iPhone que encontrei no YouTube, percebi que meu firefox mostrava que o código da tag <embed> não era válido pela W3c, então procurei no nosso amigo Google uma alternativa que tornasse o código do vídeo válido e que o mostrasse corretamente tanto para Firefox como IE 6. A primeira solução que encontrei criava um código que funcionava para Firefox e outro para IE, não achei que fosse o melhor. Procurando um pouco mais no nosso querido amigo, encontrei neste blog uma solução mas fácil e menor. Este foi o vídeo que peguei no Youtube (porque adoro gatos), que me fornece um código assim: