olá,
estou tentado criar um simples metodo para enserir no bd, mas não consigo fazer isso funcionar. Já estou quase tendo um ataque cardiaco e nada. por isso venho pedir ajuda aqui no forum. não consegui encontrar um estou fazer M-erro, até desanima.
meu codigo:
arquivo conexao:
<?php try{ $con = new PDO("mysql:host=localhost;dbname=transportadora","root",""); }catch(PDOException $e){ echo "Erro ao conectar ao Bando de dados." . $e.getMessege(); die(); }
classe cliente:
<?php
Class Cliente {
private $id;
private $nome;
private $cpf;
private $telefone;
private $email;
public function getId(){
return $this->id;
}
public function setId($id){
$this->id = (int) $id;
}
public function getNome(){
return $this->nome;
}
public function setNome($nome){
$this->nome = $nome;
}
public function getCpf(){
return $this->cpf;
}
public function setCpf($cpf){
$this->cpf = $cpf;
}
public function getTelefone(){
return $this->telefone;
}
public function setTelefone($telefone){
$this->telefone = $telefone;
}
public function getEmail(){
return $this->email;
}
public function setemail($email){
$this->cpf = $email;
}
}
class com metodo de inserir:
<?php
Class ClienteDao{
private $con;
public function __construct(PDO $con){
$this->con = $con;
}
public function inserirCliente(Cliente $cliente){
$nome = $cliente->getNome();
$cpf = $cliente->getCpf();
$telefone = $cliente->getTelefone();
$email = $cliente->getEmail();
$query = "INSERT INTO cliente (nome, cpf, telefone, email) VALUES(?,?,?,?)";
$stmt = $this->con->prepare($query);
$stmt->bindParam(1, $nome);
$stmt->bindParam(2, $cpf);
$stmt->bindParam(3, $telefone);
$stmt->bindParam(4, $email);
$stmt->execute();
}
}
arquivo que usa o metodo:
<?php
session_start();
require_once '../conexao/conexao.php';
require_once 'cliente.class.php';
require_once 'clienteDao.class.php';
$clienteDao = new ClienteDao($con);
$cliente = new Cliente();
$cliente->setNome("$_POST['nome']");
//echo $_POST['nome'];
$cliente->setCpf($_POST['cpf']);
$cliente->setTelefone($_POST['telefone']);
$cliente->setEmail($_POST['email']);
$clienteDao->inserirCliente($cliente);
header('location: ../clienteFormulario.php');
die();
meu formulario:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<h2>Cadastro Clientes</h2>
<form action="controller/inserirCliente.php" method="post">
<div class="form-group">
<label >Nome:</label>
<input type="text" class="form-control" placeholder="Enter email" name="nome">
</div>
<div class="form-group">
<label for="email">Cpf:</label>
<input type="text" class="form-control" placeholder="Enter email" name="cpf">
</div>
<div class="form-group">
<label for="email">Telefone:</label>
<input type="text" class="form-control" placeholder="Enter email" name="telefone">
</div>
<div class="form-group">
<label for="email">Email:</label>
<input type="text" class="form-control" placeholder="Enter email" name="email">
</div>
<button type="submit" class="btn btn-primary">cadastrar</button>
</form>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
</body>
</html>
OBs:
“Não está aparecendo nenhuma mensagem de erro.”
agradeço desde já.