Canais iMasters

Dreamweaver + PHP

Sistema de publicação de fotos com comentários (Conclusão)

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.


Comente também

7 Comentários

DZ  Estúdio Ilustrações Gráficas Ltda
DZ Estúdio Ilustrações Gráficas Ltda

Grande leandro, parabéns pela sequência de artigos. Realmente mto bons. Seria possível postar os arquivos do script? grande abraço, Marcelo

Leandro Vieira
Leandro Vieira

Olá Marcelo, em cada artigo foi disponibilizado para download as páginas utilizadas. Um abraço.

Cleimar Lemes
Cleimar Lemes

Bom como o amigo disse acima, eu baixei o arquivo da materia anterior, mas o arquivo esta corrompido, por favor coloque novamente junto com esta ultima matéria por favor. :) abraços.

Hamilcar Silva
Hamilcar Silva

Vê se disponibiliza os scripts aí pra turma, e em quase todas as matérias publicadas, existem links quebrados, como o da configuração da extensão PlugXML RSS Creator, confere estes links e corrija-os para nós. Suas matérias estão show, está de parabens.

Leandro Vieira
Leandro Vieira

Os problemas com os links estão ocorrendo devido a modificação no novo site, então, peço a vocês por gentileza, para encaminharei ao meu e-mail: leandroimassters@plugsites.net todos esses erros de links.

Obrigado.

Cleimar Lemes
Cleimar Lemes

NAO EM LINK E SEU EMAIL TB NAO FUNCIONA AMIGO..

Deletem Essa Conta
Deletem Essa Conta

Salve Leandro, depois que aprendi mais sobre Php (graças aos Cds que comprei) pude acompanhar essas aulas suas aqui. Valeu!

Qual a sua opinião?

Comentários considerados ofensivos serão moderados.

Parceiros

IBM
PagSeguro
Internet Innovation
Dialhost
HostNet
Tecla
KingHost
DotStore
Dinamize