Jump to content
agent369

Objecto para criar vários forms

Recommended Posts

agent369

Boas, então é assim, tenho de criar 40 formulários que podia fazer perfeitamente à unha e criar 40 ficheiros, mas a minha ideia era criar uma class em que passa-se só o nome da tabela da BD e ele identifica o tipo de cada campo dessa tabela e fizesse echo do html

por exemplo na tabela:

user_id INT auto_increment

user_email varchar

user_password varchar

user_dt_nasc DATE

e ele fazia um for por cada campo da tabela e um if simples:

if ($field_type == "varchar") echo "<input type="text" text="">;

elseif ($field_type == "INT") echo ...

sei que dá para fazer que já vi um exemplo, mas a minha dúvida é se uma boa maneira de gerar formulários ou não.

Obrigado desde já ;)

Share this post


Link to post
Share on other sites
HappyHippyHippo

é uma ideia ...

se é boa ideia ? depende de :

- nessas tabelas tens campos que não queres que apareçam ?

- achas que tens conhecimentos suficientes para criar essa classe rapidamente ?

- achas que consegues organizar o formulário de maneira aceitável com os dados vindos da estrutura da tabela ?

- achas que consegues distinguir todos os tipo de dados e as suas nuances, e aplicar nos diferentes tipos de elementos de input de forma transparente ?

- depois de responder à perguntas anteriores, achas que é mais rápido ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
fil79

Pode funcionar, mas precisas de ter muita coisa em atenção, como disseram. Podes começar por algo como isto e depois desenvolver, ou seja saber quais os campos de determinada tabela e seu tipo de dados

Class Form{

public function   listaCampos($tabela,$naoInclui,$campos_obrigatorios){

	$sql="SHOW COLUMNS FROM ".$tabela;

	$resultado=mysql_query($sql);
	return $this->constroiForm($resultado,$naoInclui,$campos_obrigatorios);
}

}

Edited by fil79

MCITP-MCTS-MCP

Share this post


Link to post
Share on other sites
Devexz

é uma ideia ...

se é boa ideia ? depende de :

- nessas tabelas tens campos que não queres que apareçam ?

- achas que tens conhecimentos suficientes para criar essa classe rapidamente ?

- achas que consegues organizar o formulário de maneira aceitável com os dados vindos da estrutura da tabela ?

- achas que consegues distinguir todos os tipo de dados e as suas nuances, e aplicar nos diferentes tipos de elementos de input de forma transparente ?

- depois de responder à perguntas anteriores, achas que é mais rápido ?

Estas questões vieram-te logo à cabeça como se fosse um raio ou estiveste a pensar durante 5min? (não estou a gozar). :P


Contador de calorias: caloriaspordia.com

Share this post


Link to post
Share on other sites
HappyHippyHippo

Estas questões vieram-te logo à cabeça como se fosse um raio ou estiveste a pensar durante 5min? (não estou a gozar). :P

quando caminhas, pensas onde vai pousar os pés em cada passo ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
agent369

comecei a analisar melhor e já estava a ver que ia dar muita confusão por causa de campos como anexos que estão em varchar, e foreign keys etc.

optei antes por prolongar a minha array, eu já tinha até à parte do select que até aí era apenas usada para construir o menu e as tabelas, e agora adicionei do form para baixo, certamente não é a melhor maneira mas por enquanto funciona.

"funcionarios" => array(
"dados" => array(
 "name" => "dados",
 "icon" => "user",
 "text" => "Dados",
 "select" => "SELECT bla bla bla from worker",
 "form" => array(
  "type" => array("text(45)","text(45)", "text(45)", "int", "int", "int", "date", "textarea(200)"),
  "name" => array("worker_name", "worker_adress", "worker_email", "worker_cc", "worker_nib", "worker_niss", "worker_dt_birth", "worker_obs"),
  "text" => array("Nome: ", "Morada: ", "E-Mail: ", "Cartão Cidadão: ", "NIB: ", "NISS: ", "Data Nascimento: ", "Observações: ", ),
  ),
 ),

Share this post


Link to post
Share on other sites
fil79

Realmente não é pacifico de todo. Eu tenho 3 classes (READ, CREATE, UPDATE) que me facilitam muito a vida. Mas as mesmas

por vezes têm de ser adaptadas de aplicação para aplicação devido a todas as condicionantes apresentadas.

Mas mesmo assim acabo por poupar muito tempo!


MCITP-MCTS-MCP

Share this post


Link to post
Share on other sites
agent369

não é pacifico como assim?

sim eu também tenho 3 classes, a de select, insert e update. Poupam imenso tempo em criar variáveis, ciclos while etc

Share this post


Link to post
Share on other sites
fil79

não é pacifico como assim?

sim eu também tenho 3 classes, a de select, insert e update. Poupam imenso tempo em criar variáveis, ciclos while etc

Não estavas a dizer que querias uma classe que lesse os campos de uma determinada tabela e criasse automaticamente forms?? é isso que fazem, para novos registos, updates ou somente para leitura


MCITP-MCTS-MCP

Share this post


Link to post
Share on other sites
Kami was taken

não? ainda não percebi onde queres chegar :confused:

jackie-chan-meme.jpg

Foi uma pergunta retórica... É o mesmo que dizer: "Quando fazes algo constantemente, acabas por fazê-lo de forma tão fácil que parece automática".

Digo isto porque pensei exatamente nos mesmos problemas.

Abraço!


L, did you know Shinigami only eat apples?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.