PDO Não Funciona ONLINE, somente me LOCALHOST.
Olá. Amigos, estou com B.O. que fiz um sistema de login, porém não sei o que acontece, ele não executa quando está no meu servidor online, porém em localhost funciona perfeitamente.
Veja o Código abaixo, o estranho que não retorna erro e as variáveis chegam na função perfeitamente.
ARQUIVO: login.php
session_start();require_once "conexao/conexao.php";require_once "funcoes/sql_PDO_login.php";/* LOGAR NO SISTEMA */if (isset($_POST['logar']) AND $_SERVER['REQUEST_METHOD'] == 'POST'): $cpf = antiSQL($_POST['cpf']); $data_nascimento = antiSQL($_POST['data_nascimento']); $data_nascimento = DateTime::createFromFormat('d/m/Y', $data_nascimento); // Padrão Consulta $data_nascimento = $data_nascimento->format('Y-m-d'); // Padrão MySQL if (PDO_login($cpf, $data_nascimento)): PDO_loginRegistra($_SESSION['logado_cliente_id'], $_SESSION['logado_cliente_nome'], date("Y-m-d H:i:s"), $_SERVER['REMOTE_ADDR']); $pagina_destino = "index.php"; echo "<meta HTTP-EQUIV = 'Refresh' CONTENT = '0; URL = $pagina_destino'>"; else: echo "<script>alert('ACESSO NEGADO \\nLogin ou Senha Inválidos')</script>"; endif;endif;
ARQUIVO: conexao.php
<?phperror_reporting(E_ALL);@ini_set('display_errors', '1');@ini_set('register_globals', '0');define('HOST', 'localhost');define('USER', 'root');define('PASS', '');define ('BD', 'sistema');function conectarBanco(){ $dsn = "mysql:host=" . HOST . ";dbname=" . BD; try { $conectar = new PDO($dsn, USER, PASS); $conectar -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); return $conectar; } catch (PDOException $error) { echo "Erro ao Conectar ao Banco de Dados " .$error ->getMessage(); } }?>
ARQUIVO: sql_pdo_login.php
/* ////////////////////////////////////////////////////////////////////////////////////////// *//* /// LOGIN - VERIFICA E-MAIL E SENHA E CRIA AS SESSIONS /////////////////////////////////// *//* ////////////////////////////////////////////////////////////////////////////////////////// */function PDO_login($cpf, $data_nascimento) { $pdo = conectarBanco(); try { $login = $pdo->prepare("SELECT * FROM alunos WHERE cpf = ? AND data_nascimento = ? and situacao='0'"); $login -> bindValue(1, $cpf, PDO::PARAM_STR); $login -> bindValue(2, $data_nascimento, PDO::PARAM_STR); $login -> execute(); if ($login -> rowCount() == 1): $dados = $login->fetch(PDO::FETCH_ASSOC); $_SESSION['logado_cliente'] = true; $_SESSION['logado_cliente_id'] = $dados['id_aluno']; $_SESSION['logado_cliente_nome'] = $dados['nome']; return true; else: return false; endif; } catch (PDOException $error) { echo "<h4>"; echo "Mensagem de Erro: " . $error->getMessage(); echo "</h4>"; }}/* ////////////////////////////////////////////////////////////////////////////////////////// *//* /// LOGIN REGISTRA - REGISTRA O ACESSO /////////////////////////////////////////////////// *//* ////////////////////////////////////////////////////////////////////////////////////////// */function PDO_loginRegistra($id_aluno, $nome, $data_horario, $ip) { $pdo = conectarBanco(); try { $cadastrar = $pdo->prepare("INSERT INTO logs_acesso_aluno (id_log, id_aluno, nome, data_horario, ip) VALUES (NULL, ?, ?, ?, ?)"); $cadastrar -> bindValue(1, $id_aluno, PDO::PARAM_STR); $cadastrar -> bindValue(2, $nome, PDO::PARAM_STR); $cadastrar -> bindValue(3, $data_horario, PDO::PARAM_STR); $cadastrar -> bindValue(4, $ip, PDO::PARAM_STR); $cadastrar -> execute(); if ($cadastrar -> rowCount() == 1): return true; else: return false; endif; } catch (PDOException $error) { echo "<h4>"; echo "Mensagem de Erro: " . $error->getMessage(); echo "</h4>"; }}
Tela de Erro:
Ele retorna na seguinte linha do login.php:
>
echo "<script>alert('ACESSO NEGADO \\nLogin ou Senha Inválidos')</script>";
**Versão do PHP online: 5.3.26**
/applications/core/interface/imageproxy/imageproxy.php?img=http://www.autoescolaveloster.com.br/pdo.jpg&key=b37abe8438c27be60b8232c95f82c6ae6b40f33cb58f142bf6473b0aab7a5e08" alt="pdo.jpg" />
Alguma ajuda ? por favor...
Discussão (5)
Carregando comentários...