Indo mais afundo em meus estudos de programação PHP, já li uns material sobre
orientação a objetos no PHP.
Pesquisando na internet encontrei uma classe para criar formulário com php orientação a objeto.
A classe funciona, é bem simples, mais é o começo para quem tá iniciado agora como esse método de programar.
Eu me deparei com um problema na classe, claro eu como já tenho um pouco de conhecimento
da linguagem eu deveria resolver essa questão, mas já tentei e não consegui resolver isso.
O problema é no caixa de texto do formulário.
A classe gera um código HTML com a caixa de texto sempre no formato texto.
Aí se eu for criar um formulário de login, a caixa de texto da senha ficara sempre em texto puro
visível para o usuário.
Então o que eu quero fazer é definir também o tipo da caixa de texto do formulário.
Aqui está a classe:
- Código: Selecionar todos
<?php
class Form {
private $fields;
private $method;
private $type; // ainda precisa ser configurados seus métodos
private $action;
private $labelSubtmit;
public function getMethod()
{
return $this->method;
}
public function setMethod($method)
{
$this->method = $method;
}
public function getAction()
{
return $this->action;
}
public function setAction($action)
{
$this->action = $action;
}
public function getLabelSubtmit() {
return $this->labelSubtmit;
}
public function setLabelSubtmit($labelSubtmit) {
$this->labelSubtmit = $labelSubtmit;
}
public function addFieldText($name, $label)
{
$this->fields[$name] = $label;
}
public function showForm()
{
echo "<form method=\"$this->method\" action=\"$this->action\" ></br>\n";
foreach ($this->fields as $key => $value) {
echo "<label for=\"$key\">$value:</label></br>\n";
echo"<input type=\"\" name=\"$key\"></br>\n";
}
echo "<input type=\"submit\" value=\"$this->labelSubtmit\"></br>\n";
echo "</form>";
}
}
?>
Exemplo de um arquivo index.php:
- Código: Selecionar todos
<?php
include 'form.class.php';
$form = new Form();
$form->setAction("login.php");
$form->setMethod("post");
$form->setLabelSubtmit("Salvar");
$form->addFieldText("login", "Login");
$form->addFieldText("senha", "Senha");
$form->showForm();
?>
Alguém disposto a compartilhar um pouco do seu conhecimento e me ajudar nessa questão.
Posso ainda também vasculhar o framework do BFW e ver se encontro algo.
Fico aguardando alguém.