Curso Criando um Site do Zero - Aula 16 - Cadastro de Clientes III
07/09/2016Nesta 16ª vídeo-aula faremos nossa classe de inserção no banco de dados. Para tanto o primeiro passo será criar uma pasta "class" no nosso diretório raiz. Essa pasta conterá todas as classes do nosso sistema. Nosso diretório raiz ficará da seguinte maneira:
Posteriormente criaremos um arquivo ClassInsercao dentro da nossa pasta class. Este arquivo conterá o seguinte código:
require_once("../models/ClassConexao.php");
class ClassInsercao extends ClassConexao{
private $Id;
private $CodInterno;
private $CodEstrangeiro;
private $Nome;
private $Email;
private $Telefone;
private $Idade;
#Método construtor
public function __construct($Nome,$Email,$Telefone,$Idade){
$this->Id=0;
$this->CodInterno=rand(1,1000000000);
$this->CodEstrangeiro=rand(1,1000000000);
$this->Nome=$Nome;
$this->Email=$Email;
$this->Telefone=$Telefone;
$this->Idade=$Idade;
}
#Método de Inserção
public function InserirDB(){
$Crud=$this->Conectar()->prepare("INSERT INTO clientes VALUES (?,?,?,?,?,?,?)");
$Crud->bindParam(1,$this->Id,PDO::PARAM_INT);
$Crud->bindParam(2,$this->CodInterno,PDO::PARAM_INT);
$Crud->bindParam(3,$this->CodEstrangeiro,PDO::PARAM_INT);
$Crud->bindParam(4,$this->Nome,PDO::PARAM_STR);
$Crud->bindParam(5,$this->Email,PDO::PARAM_STR);
$Crud->bindParam(6,$this->Telefone,PDO::PARAM_STR);
$Crud->bindParam(7,$this->Idade,PDO::PARAM_STR);
$Crud->execute();
}
}
No código acima, iniciamos nosso arquivo requerindo nossa ClassConexão (arquivo criado na última aula). Iniciamos então a nossa ClassInserção extendendo a ClassConexão, ou seja, todos os atributos e métodos da ClassConexão que tenham os modificadores de acesso publico (public) ou protegido (protected) estarão disponíveis na nossa classe de inserção.
Nas linhas abaixo declaramos nossos atributos, que no caso são os mesmos campos da tabela clientes.
O nosso método construtor receberá os parâmetros do nosso controller (será criado na próxima aula) e setará os valores as variáveis.
O nosso método de inserção prepara a Query SQL e faz a inserção dos valores no DB.