Aldeia Numaboa

  • Increase font size
  • Default font size
  • Decrease font size
Home Informática Tutoriais e Programação Joomla Componente 1.5 MVC - A tabela

Componente 1.5 MVC - A tabela

Indique esta página Imprimir PDF
(6 votos, média 5.0 de 5)

Do que adianta ter um modelo se tivermos que colocar todos os dados no código? Muito pouco! O grande lance é fazer com que o modelo converse com tabelas do banco de dados. Este é o assunto deste tutorial, o terceiro da série Componente 1.5 MVC.

Obtendo dados

Nosso modelo, por enquanto, possui apenas um método: pegaOla( ). Este método é simplérrimo, só retorna uma string que consta do código.

Para que as coisas fiquem mais interessantes, vamos buscar uma saudação numa tabela do banco de dados. No tutorial Componente 1.5 - Tabela de Dados já vimos como podemos criar uma tabela e repetir o que já foi explicado seria uma perda de tempo. O negócio aqui é aprender a se comunicar tchau

O primeiro passo é obter a referência de um objeto base de dados. Como o Joomla usa a base de dados para as suas operações normais, quando nosso componente estiver sendo chamado já existe uma conexão à base de dados. Como sabemos disto, não vamos nos dar ao trabalho de criar uma nova conexão. A referência à conexão já existente pode ser obtida usando:

$db =& JFactory::getDBO();

JFactory é uma classe estática que é usada para obter referências de um montão de objetos do sistema, entre eles, o que estamos precisando no momento: o Objeto DataBase. Aliás, DBO vem daí mesmo, DataBase Object.

Como queremos uma REFERÊNCIA do objeto, o tradicional sinal = ganha um adicional e passa a ser =&. Cuidado com isto!

Tendo a referência do objeto, é bico buscar os dados que desejarmos. Fazemos isto em três etapas:

  1. Criamos uma query,
  2. Armazenamos a query no objeto database e depois
  3. Carregamos o resultado.

Chegou a hora de dar um trato no novo método pegaOla( ) do script /models/ola.php (o modelo do frontend):

function pegaOla()
{
   $db =& JFactory::getDBO();
 
   $query = 'SELECT mensagem FROM #__ola';
   $db->setQuery( $query );
   $saudacao = $db->loadResult();
 
   return $saudacao;
}

ola é o nome da tabela e mensagem é o campo que contém as saudações.

O método $db->loadResult( ) executa a query armazenada na base de dados e retorna o campo mensagem da primeira linha do resultado. Se a tabela tiver três registros e as mensagens forem "Bom te ver", "Boas Vindas!" e "Grande abraço", $saudação será igual a "Bom te ver", a primeira mensagem da lista.

Finalmentes

Sei que todo mundo está louco para instalar esta nova versão do componente Ola (pelo menos espero que estejam). Acontece que, para fazer um novo pacote de instalação ainda falta o backend (a parte administrativa). Sem ela, o instalador do Joomla não aceita o pacote como válido. Então, não nos resta outra coisa a não ser ler o próximo tutorial que trata exatamente deste assunto.

Vejo vocês no próximo tutorial. Até mais.

vovo Vicki vovó Vicki

Índice da série de tutoriais Componente 1.5 MVC

  1. Componente 1.5 - Padrão MVCComponente 1.5 - Padrão MVC
  2. Componente 1.5 MVC - Frontend
  3. Componente 1.5 MVC - Frontend II
  4. Componente 1.5 MVC - A tabela
  5. Componente 1.5 MVC - Interface Admin
  6. Componente 1.5 MVC - Funcionalidade admin
  7. Componente 1.5 MVC - Funcionalidade admin II

Referência

Hello World MVC 2 Component - The table

Atualização Ter, 21.04.2009 21:24  

Na Aldeia

Há 150 visitantes online

3293 registros
1 hoje
12 nesta semana
29 neste mês

Boas vindas: meuso

Estatística

Artigos: 1063
Leituras: 6010890
Arquivados: 21
Downloads: 533
Baixados: 171272
Glossário: 1208
Bibliografia: 25
Links: 90

Visitas de onde

Top 5:
Brasil flag 73%Brasil (38817)
Portugal flag 4%Portugal (2392)
EUA flag 4%EUA (1880)
Holanda flag 0%Holanda (237)
Rússia flag 0%Rússia (227)
53540 visitas de 97 países

Hoje:1476
Ontem:2470
No mês:27725
Mês passado:25815
Total:53540
Recorde:3037
No dia:04.03.10
Leituras hoje:13233
Leituras Total:231123
Bots hoje:253
Dados desde:16.02.2010

Login

Kanji da hora




Faça contato







A todos os amigos que me mandaram correntes que prometiam fortuna e felicidade em 2009, comunico que...

Leia Mais