Created
January 25, 2014 17:32
-
-
Save juniorb2ss/8620126 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Crie uma nova tabela `campos`. | |
- Nesta tabela, será responsável para armazenar todos os campos que serão pedidos ao inserir um novo animal. | |
- Estrutura da tabela: | |
`id` (auto_increment) | |
`id_grupo` ( se você tem algum controle de grupos, por exemplo (peixe = 3) você pode especificar que esses campos só serão usados quando for inserir novo tipo de especie de peixe) | |
`access` ( se você tiver niveis de permissão use este campo para definir que nível terá acesso a este campo, por exemplo: Admin pode adicionar o peso do peixe, mas um funcionário só poderá adicionar o nome e especie, já que ele terá nível de permissão menor do que estara definido aqui. | |
`name_input` ( valor do input ) | |
`nome_campo` ( aqui você especifica o nome do campo, por exemplo: Nome, Idade, Peso e etc. ) | |
`required` ( este campo vai ser obrigatório? ) | |
`ativado` ( este campo esta ativado? ) | |
Ao monta o formulário, você faz uma query | |
select * from campos WHERE access >= NIVEL_ACESSO_USUARIO and ativado = 1 AND id_grupo ID_GRUPO_DO_ANIMAL | |
o resultado desta query você faz um loop, criando todos os campos. | |
foreach ( a as b) | |
{ | |
<input name = b[name_input] if(b[required]) echo 'required'> b[nome_campo] </input> | |
} | |
Este modo irá criar um formulário com todos os campos necessários para adicionar um novo animal. | |
Ao inserir o animal, você faz um outro foreach, verificando os campos informados se correpondem aos campos que estão na tabela campos. | |
Na tabela animais, você cria um campo: `valores`. | |
Ao inserir ou editar novo animal, você salva os valores dos campos em json_encode | |
exemplo: {"nome":"teste","peso":"555","idade":"55 anos"} | |
E e para mostrar, só pegar e mostrar quando for visto informação de algum animal. | |
Simples. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment