Bom, de acordo com o planejamento do nosso projeto, estão pendentes duas tarefas a serem realizadas: relacionar as cinco últimas fotos postadas na página inicial (index.php) e relacionar todas elas na página: fotos_index.php. Bom, os princípios para a realização de ambas as tarefas é a mesma, diferenciando-se apenas na instrução SQL, explicarei adiante.
Para selecionarmos as cinco últimas fotos no banco de dados, precisaremos de um Recordset, sendo assim, vamos criá-lo:
No painel Bindings (Ctrl + F10) localizado na aba Application, selecione o recurso Recordset (Query) e configure-o como exemplificado na imagem abaixo:

O diferencial da configuração do Recordset acima diz respeito à aplicação do Sort com as seguintes informações: foto_id (campo da tabela) e Descending (forma de ordenação). O que significa dizer que o Recordset será ordenado pelo campo foto_id de forma decrescente, ou seja, exibindo sempre as últimas fotos. Mas, como exibiremos apenas cinco fotos, precisamos configurar essa limitação na instrução SQL. Observe a instrução gerada pelo Recordset.
$query_rsUltimasFotos = "SELECT * FROM fotos ORDER BY foto_id DESC";
Altere-a deixando assim:
$query_rsUltimasFotos = "SELECT * FROM fotos ORDER BY foto_id DESC LIMIT 1,5 ";
O LIMIT 1,5 significa que iremos "pular" a última foto, pois, ela já está sendo exibida como a principal, então seria redundante e desnecessário repetir. Exibiremos no máximo cinco fotos. Como perceberam, o 1,5 significa o seguinte: o primeiro número - 1 - refere-se ao início do registro, já o último - 5 - o total máximo a ser exibido. Com a configuração do Recordset realizada e compreendida, basta exibirmos as fotos. Vamos lá:
Na aba Commom selecione a opção: Images: Image, sexta opção da esquerda para a direita. E configure-o como mostrado na imagem abaixo:

Vamos compreender a configuração do painel Select Image Source:
1º - Informamos que selecionaremos o nome da imagem (select file name from) de um Data sources, ou melhor, de um banco de dados/recordset;
2º - Selecionamos em Field o Recordset que será utilizado (rsUltimasFotos);
3º - Informamos qual dos campos - foto_foto - do Recordset - rsUltimasFotos - contém o nome da imagem que exibiremos.
4º - Código PHP que será aplicado no atributo src da tag img.
Nota: como as fotos postadas estão localizadas no diretório fotos precisamos deixar o atributo src da seguinte forma:
<img src="fotos/<?php echo $row_rsUltimasFotos['foto_foto']; ?>" alt="" />
Ao invés de:
<img src="<?php echo $row_rsUltimasFotos['foto_foto']; ?>" alt="" />
Bom, como são cinco fotos a serem exibidas, precisamos aplicar o behavior Repeat Region para que ele exiba todas as imagens que precisamos - cinco. Para tal, selecione os códigos HTML utilizados para exibir a imagem e aplique o behavior sobre ele. Observe:

O behavior Repeat Region, localiza-se na aba Application, sendo a terceia opção da esquerda para a direita. E, como observamos na imagem acima, sua configuração é muito simples. Basta informamos qual o Recordset será utilizado e a marcar a opção; All Records em Show.
No início deste artigo, eu disse a vocês que os princípios aqui utilizados serão os mesmos para a página fotos_index.php - responsável em listar todas as fotos - sendo que a diferença estaria na instrução SQL, então veja a difereça:
Ao invés de utilizarmos a seguinte instrução:
$query_nomeDoRecordset = "SELECT * FROM fotos ORDER BY foto_id DESC LIMIT 1,5";
Utilize-a assim:
$query_nomeDoRecordset = "SELECT * FROM fotos ORDER BY foto_id DESC";
Ou seja, selecionaremos todos os dados - fotos - da tabela fotos e o ordenaremos de forma descrescente, para que possamos exibir sempre as últimas fotos postadas. Então, o desenvolvimento da referida página ficarão a cargo de vocês, uma oportunidade para exercitar o aprendizado.
Bom, como finalizamos as tarefas a serem desenvolvidas, finalizamos também o desenvolvimento do nosso projeto Sistema de publicação de fotos com comentários. Sendo assim, relato as seguintes considerações:
O desenvolvimento do projeto foi grande - 10 artigos foram necessário -, mas espero que tenha sido produtivo. O sistema foi simples, procurei explicar-lhes mais os passos para alcançar tal caminho, mas acredito que foi o suficiente para quem o acompanhou aprendesse bastante coisas.
Não foquei no design/estética do projeto, deixando tal tarefa a cargo de vocês. Senão, o artigo se estenderia demais e há muitas outras coisas a serem descritas aqui, nesta coluna.
Para quem gostou dos recursos apresentados/aprendidos, sugiro que acompanhe o fóurm iMasters de PHP, para que possam aprender cada vez mais e trocarem idéias com outros desenvolvedores, postando suas dúvidas/dificuldades e solucinando as dos demais ali presente.
Sendo assim, finalizo dizendo que foi muito bacana esta série e que outras estarão por vir. Um abraço e uma ótima semana a todos.











7 Comentários
Qual a sua opinião?