A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Informática Numaboa - Tutoriais e Programação

Componente 1.5 - Tabela de Dados

Sab

19

Jan

2008


22:51

(13 votos, média 4.54 de 5) 


Nesta quarta etapa do Componente 1.5 vamos aprender como criar uma tabela na base de dados do Joomla para armazenar informações referentes apenas ao componente "Olá Pessoal".

Índice da série de tutoriais Componente 1.5

  1. Componente 1.5 - O basicão
  2. Componente 1.5 - Como registrar
  3. Componente 1.5 - Barra de Ferramentas
  4. Componente 1.5 - Tabela de Dados

Três métodos para criar uma tabela

Podemos criar a tabela na linha de comando do console, usando um gerenciador de banco de dados via web (como o PHPMyAdmin) ou através do arquivo de instalação do componente.

Se você tem acesso direto ao banco de dados, execute a seguinte query na linha de comando do console (se o prefixo das suas tabelas forem jos_):

CREATE TABLE `jos_ola` ( `id` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY, `mensagem` TEXT NOT NULL, `published` TINYINT( 1 ) NOT NULL );

Se você tiver um gerenciador, use-o para criar uma tabela com os mesmos campos citados na query.

Se você não tiver nenhum dos dois, só resta criar a tabela através do arquivo xml de instalação:

Ola 19.01.2008 vovó Vicki Creative Commons webmaster arroba numaboa.com.br www.numaboa.com 1.1 J1.5 RC4 Creative Commons by-nc-sa Componente simples para dizer Olá pessoal! ola.php Olá Pessoal admin.ola.php toolbar.ola.php toolbar.ola.html.php tables/ola.php DROP TABLE IF EXISTS `#__ola`; CREATE TABLE `#__ola` ( `id` int(11) unsigned NOT NULL auto_increment, `mensagem` text NOT NULL default '', `published` tinyint(1) NOT NULL default '0', PRIMARY KEY (`id`) ) TYPE=MyISAM CHARACTER SET `utf8`; DROP TABLE IF EXISTS `#__ola`;

Veja que as queries para criar a tabela jos_ola foram colocadas na seção <install>, subseção <queries>. Você pode usar quantas queries forem necessárias para criar uma ou mais tabelas.

Observe que foi inserida uma query para eliminar a tabela quando o componente for desinstalado. É uma boa prática e uma questão de respeito com outros usuários não deixar tabelas inúteis na base de dados.

atencao Volto a repetir: cuidado com os backticks ( ` ) para os nomes dos campos e tabelas e com as aspas simples ( ' ) para os valores!

info Cuidado com a sintaxe do xml. Qualquer errinho e o Joomla vai dar uma mensagem de erro de que não encontrou o arquivo de instalação (não diz que existe um, mas que tem erros) ou uma mensagem de query com problemas.

Aproveitando o embalo, já que estamos mexendo no script de instalação, resolvi incluir o script mostrado a seguir e dar uma ordem nos diretórios. Na máquina local criei o diretório admin para colocar os scripts e os novos diretórios da área administrativa. A árvore agora está assim (os diretórios são mostrados entre colchetes):

[com_ola] |
          |- [admin] |
                     |- [tables] |
                                 |- ola.php
                     |- admin.ola.php
                     |- toolbar.ola.html.php
                     |- toolbar.ola.php
          |- ola.php
          |- ola.xml

Para atender a nova disposição dos arquivos, no marcador da seção < < entrou um novo parâmetro, folder="admin", para indicar o diretório base dos scripts da área administrativa.

Informações adicionais