Olá a todos. Gostaria de iniciar este artigo pedindo desculpas a vocês pela demora na publicação. O tempo, nesses dias, infelizmente está bem curto e devido a isso não tive tempo para escrevê-lo mais cedo. Bom, vamos em frente!
No artigo anterior, Sistema de publicação de fotos com comentários (configurando os Recordsets para exibição das fotos), trabalhamos na criação dos Recordsets e, hoje, veremos como utilizá-los.
O objetivo de hoje é exibir a última foto postada com os comentários referente a ela, ou a foto selecionda pelo usuário na lista das últimas publicações. Então, fazeremos uso de três dos Recordsets, sendo eles: rsUltimaFoto com e sem filtro e rsComentarios.
Vamos iniciar exibindo a foto, seja a última postada ou a selecionada pelo usuário.
Veja como ficará a tela no Dreamweaver:

Nela percebemos que há: o título e a data da postam da foto, a foto propriamente dita e a legenda referente a ela. Então, vejamos como chegar até o estado exibido na imagem acima.
Para exibir o título e a data, basta arrastar do painel Bindings (Ctrl + F10) os campos foto_titulo e foto_data respectivamente. Já a foto, procederemos assim:
Clique na opção Images: Image da aba Commom (sexta opção da esquerda para a direita) e configure como mostrado na imagem abaixo:

Explicando:
Informamos que a imagem será oriunda de um Data souces e não de um File system, ou seja, que a sua referência (nome) está armazenada em um banco de dados e não em um diretório. Então, ao marcamos essa opção (Data sources) é exibido os Recordsets presentes na página, bastando apenas selecionar o campo que se refere a foto no Recordset apropriado. Em nosso caso, selecionaremos o campo foto_foto do Recordset rsUltimaFoto.
1º - Escolhemos a opção Data Souces;
2º - Informamos o campo que se referencia à foto;
3º - Acrescentamos o diretório em que as fotos estão armazendas.
Para exibir a legenda da foto, basta arrastar o campo foto_legenda do painel Bindings (Ctrl + F10), assim como feito para a exibição do título e da data.
Agora, vejamos como exibir os comentários.
Sabemos que todos os comentários estão sendo extraídos do banco de dados pelo Recordset rsComentários e que este possui um filtro para exibir somente os comentários da foto em questão. Então, basta arrastar os campos com_autor (responsável pelo comentário) com_data (data em que o comentário foi postado) e com_com (o comentário em sim). E aplicar o behavior Repeat Region para exibir todos os comentários. Veja um print da tela no Dreamweaver:

Para aplicar o behavior Repeat Region, faça o seguinte: selecione os dados oriundo do banco de dados (autor, data e comentário) e aplique o behavior. Ele está localizado na aba Application, sendo a terceira opção da esquerda para a direita, veja a imagem com sua localização:

Agora, veja o exemplo de sua configuração:

Explicando: em Recordset informamos qual o Recordset (rsComentários) e na opção Show, dizemos para exibir todos os dados (All Records).
Bom, se você testou a página no browser, estará vendo as datas no seguinte formato: 2006-03-10 10:49:01 e certamente não está satisfeito com elas. Então, vejamos como formatá-las:
$query_rsUltimaFoto = "SELECT *, date_format(foto_data, "%d/%m/%Y") AS foto_data FROM fotos ORDER BY foto_id DESC";
O que fiz foi alterar a instrução SQL do Recordset, assim apliquei uma formatação de data para o campo com_data, informando para exibir a data assim: 10/03/2006, ou seja, dia, mês e ano. Proceda dessa forma para os demais Recordsets.
Outro detalhe, você deve estar se perguntando, mas como exibir a última foto ou a foto requisitada pelo usuário? Simples, ambos os Recordsets que exibe a última foto ou a foto requisada possui o mesmo nome; quando há uma variável de URL é utilizado o Recordset com o filtro e quando não (há variável de URL), utilizamos o Recordset sem o filtro. Simples.
Veja a págia completa: index.php
Um abraço a todos, uma ótima semana e até o próximo.












42 Comentários
Qual a sua opinião?