Conexão com banco de dados não funciona de jeito nenhum...

SQL

PHP

Banco de Dados

06/02/2020

Bom dia,
estou a mais ou menos cinco horas enfrentando um problema com um código relativamente simples, mas que ja ta me dando dor de cabeça.
O problema consiste em uma inserção de dados no banco de dados através do PDO, mas ele não insere de jeito nenhum nem apresenta mensagem de erros. Seguem os codigos. Se alguem puder me ajudar, fico agradecido desde já!!!

CONEXÃO COM BANCO DE DADOS
<?php
/**
 * Conecta com o MySQL usando PDO
 */
function db_connect()
{
    $con = new PDO('mysql:host=localhost;dbname=oticabahia','root', '');
  
    return $con;
}
?>



FORMULÁRIO DE CADASTRO

<body>
    <?php require 'navbar.php';
    require 'codigoCadastro.php'; 
           ?>
    
    <div class="todo">
        <div class="container-fluid">
            <h2>Identificação</h2>
        

        <form action="cadastrarClientes.php" method="POST" enctype="multipart/form-data">
            <div class="row">
                <div class="col">
                    <label for="inputEmail4">Nome Completo</label>
                    <input type="text" class="form-control" placeholder="Nome" name="nome">
                </div>
                <div class="col">
                    <label for="inputEmail4">CPF</label>
                    <input type="text" class="form-control" placeholder="CPF" name="cpf">
                </div>
                <div class="col">
                    <label for="inputEmail4">RG</label>
                    <input type="text" class="form-control" placeholder="RG" name="rg">
                </div>
                <div class="col">
                    <label for="inputEmail4">Telefone</label>
                    <input type="text" class="form-control" placeholder="Telefone" name="telefone">
                </div>
            </div>
            <div class="row">
                <div class="col">
                    <label for="inputEmail4">Endereço Completo</label>
                    <input type="text" class="form-control" placeholder="Endereço Completo" name="endereco">
                </div>
            </div>

       </div> 
       <div class="container-fluid">
            <br><br>
            <h2>Produto</h2>

            <div class="row">
                <div class="col">
                    <label for="inputEmail4">Tipo de Armação</label>
                    <input type="text" class="form-control" placeholder="Armação" name="armacao">
                </div>
                <div class="col">
                    <label for="inputEmail4">Referência</label>
                    <input type="text" class="form-control" placeholder="Referência" name="referencia">
                </div>
                <div class="col">
                    <label for="inputEmail4">Tipo de Lente</label>
                    <input type="text" class="form-control" placeholder="Tipo de Lente" name="lente">
                </div>
                <div class="col">
                    <label for="inputEmail4">Codigo de Lente</label>
                    <input type="text" class="form-control" placeholder="Codigo de Lente" name="codLente">
                </div>
            </div>
            
    
       </div> 
       <div class="container-fluid">
            <br><br>
            <h2>Receita</h2>

            <div class="row">
                <div class="col">
                    <label for="inputEmail4">OD</label>
                    <input type="text" class="form-control" placeholder="OD" name="od">
                </div>
                <div class="col">
                    <label for="inputEmail4">OE</label>
                    <input type="text" class="form-control" placeholder="OE" name="oe">
                </div>
                <div class="col">
                    <label for="inputEmail4">Adição</label>
                    <input type="text" class="form-control" placeholder="Adição" name="adicao">
                </div>
                <div class="col">
                    <label for="inputEmail4">DNP</label>
                    <input type="text" class="form-control" placeholder="DNP" name="dnp">
                </div>
                <div class="col">
                    <label for="inputEmail4">Centro Ótico</label>
                    <input type="text" class="form-control" placeholder="Contro Ótico" name="centro">
                </div>
                <div class="col">
                    <label for="inputEmail4">Perto/Longe</label>
                    <select class="custom-select mr-sm-2" id="inlineFormCustomSelect" name="chose">
                        <option selected>Escolher</option>
                        <option value="perto">Perto</option>
                        <option value="longe">Longe</option>
                    </select>
                </div>
            </div>
            
        
       </div>
       <div class="container-fluid">
            <br><br>
            <h2>Método de Pagamento</h2>

            <div class="row">
                <div class="col">
                    <label for="inputEmail4">Valor</label>
                    <input type="text" class="form-control" placeholder="Custo" name="valor">
                </div>
                <div class="col">
                    <label for="inputEmail4">Parcelas</label>
                    <input type="text" class="form-control" placeholder="Parcelas" name="parcelas">
                </div>
            </div>
            
            <button type="submit" class="btn btn-primary" style="margin-top: 15px;">Cadastrar</button>
        </form>

       </div>  
    </div>
 
</body>

</html>

CÓDIGOS EM PDO PARA INSERÇÃO DE DADOS
<?php

require 'db.php';


$nome = isset($_POST['nome']) ? $_POST['nome'] : null;
$cpf = isset($_POST['cpf']) ? $_POST['cpf'] : null;
$rg = isset($_POST['rg']) ? $_POST['rg'] : null;
$telefone = isset($_POST['telefone']) ? $_POST['telefone'] : null;
$endereco = isset($_POST['endereco']) ? $_POST['endereco'] : null;
$armacao = isset($_POST['armacao']) ? $_POST['armacao'] : null;
$referencia = isset($_POST['referencia']) ? $_POST['referencia'] : null;
$tipo = isset($_POST['lente']) ? $_POST['lente'] : null;
$codigo = isset($_POST['codLente']) ? $_POST['codLente'] : null;
$od = isset($_POST['od']) ? $_POST['od'] : null;
$oe = isset($_POST['oe']) ? $_POST['oe'] : null;
$adicao = isset($_POST['adicao']) ? $_POST['adicao'] : null;
$dnp = isset($_POST['dnp']) ? $_POST['dnp'] : null;
$centro = isset($_POST['centro']) ? $_POST['centro'] : null;
$escolha = isset($_POST['chose']) ? $_POST['chose'] : null;
$valor = isset($_POST['valor']) ? $_POST['valor'] : null;
$parcelas = isset($_POST['parcelas']) ? $_POST['parcelas'] : null;

$PDO = db_connect();

$sql  = "INSERT INTO cliente(id, nome, cpf, rg, telefone, endereco, tipoArmacao, referencia, tipoLente, codigoLente, od, oe, adicao, dnp, centroOtico, distancia, valor, parcelas) VALUES (null, :nome, :cpf, :rg, :telefone, :endereco, :armacao, :referencia, :tipo, :codigo, :od, :oe, :adicao, :dnp, :centro, :escolha, :valor, :parcelas)";

$stmt = $PDO->prepare($sql);

$stmt->bindParam(':nome', $nome);
$stmt->bindParam(':cpf', $cpf);
$stmt->bindParam(':rg', $rg);
$stmt->bindParam(':telefone', $telefone);
$stmt->bindParam(':endereco', $endereco);
$stmt->bindParam(':armacao', $armacao);
$stmt->bindParam(':referencia', $referencia);
$stmt->bindParam(':tipo', $tipo);
$stmt->bindParam(':codigo', $codigo);
$stmt->bindParam(':od', $od);
$stmt->bindParam(':oe', $oe);
$stmt->bindParam(':adicao', $adicao);
$stmt->bindParam(':dnp', $dnp);
$stmt->bindParam(':centro', $centro);
$stmt->bindParam(':escolha', $escolha);
$stmt->bindParam(':valor', $valor);
$stmt->bindParam(':parcelas', $parcelas);

$stmt->execute()
?>


Eu acredito que nem todo heroi usa capa, e essa comunidade ja me salvou varias vezes. Agradeço desde já!
Heverton

Heverton

Curtidas 0

Melhor post

Kleber Santos

Kleber Santos

06/02/2020

Faz tempo que não programa em PHP, más add um try catch
class BancoDados{
	public static function conectar(){
		try{
			return new PDO('mysql:host=localhost;dbname=ProjetoWebServidor;charset=utf8', 'root', '');
		}  catch (PDOException $e) {
			die($e->getMessage());
		}
	}
}


De uma olhada em um repositório que eu tenho no gitHub:

https://github.com/Kleber2018/ProjetoFinal/blob/7e3805fc5c34f7055d035afe7f9f3950d07d67f2/conexao.php
GOSTEI 1

Mais Respostas

Heverton

Heverton

06/02/2020

Faz tempo que não programa em PHP, más add um try catch
class BancoDados{
	public static function conectar(){
		try{
			return new PDO('mysql:host=localhost;dbname=ProjetoWebServidor;charset=utf8', 'root', '');
		}  catch (PDOException $e) {
			die($e->getMessage());
		}
	}
}


De uma olhada em um repositório que eu tenho no gitHub:

https://github.com/Kleber2018/ProjetoFinal/blob/7e3805fc5c34f7055d035afe7f9f3950d07d67f2/conexao.php



Funcionou... muito obrigado!!!
GOSTEI 1
POSTAR