Olá caros amigos, estou enrolado em um PDO que nao consigo corrigir.
Eis meu script:
<?php
include "conexao.php";
$user = $_POST['user'];
$senha_tec = $_POST['senha'];
$codigo = $_POST['codigo'];
$senha1 = hash('sha256', $senha_tec);
$sql = "SELECT * FROM codigos WHERE codigo = :CODIGO";
$stmt = $PDO->prepare($sql);
$stmt->bindParam(':CODIGO', $codigo);
$stmt->execute();
if($stmt->rowCount() > 0) {
$dados = $stmt->fetch(PDO::FETCH_ASSOC);
$id_emp = $dados['id_emp'];
$sql_login = "SELECT * FROM empresas WHERE id = :EMP";
$stmt_login = $PDO->prepare($sql_login);
$stmt_login->bindParam(':EMP', $id_emp);
$stmt_login->execute();
if($stmt_login->rowCount() > 0) {
$dados_login = $stmt_login->fetch(PDO::FETCH_ASSOC);
$hostname = $dados_login['host_db'];
$usuario = $dados_login['user_db'];
$senha = $dados_login['password_db'];
$bancodedados = $dados_login['banco_db'];
$dsn = "mysql:host=" . $hostname . ";dbname=" . $bancodedados . ";charset=utf8";
$PDO = new PDO($dsn, $usuario, $senha);
$sql_tec = "SELECT * FROM sis_acesso WHERE login = :USER && sha = :SENHA LIMIT 1";
$stmt_tec = $PDO->prepare($sql_tec);
$stmt_tec->bindParam(':USER', $user);
$stmt_tec->bindParam(':SENHA', $senha1);
$stmt_tec->execute();
if($stmt_tec->rowCount() > 0) {
$dados_tec = $stmt_tec->fetch(PDO::FETCH_ASSOC);
} else {
$retornoApp = array("LOGIN"=>"ERRO");
}
}
$retornoApp = array("LOGIN"=>"SUCESSO", "HOST DB"=>$dados_login['empresa'], "PERMISSOES"=>$dados_tec['cli_grupos']);
} else {
$retornoApp = array("LOGIN"=>"ERRO");
}
echo json_encode($retornoApp);
?>
ele pega dados que estao em um banco de dados e abre uma nova conexao, porem eu nao consigo fazer com que ele retone erro caso nao o usuario e senha esteja errado
Usando as credencias corretas ele me retorna:
agora quando coloca usuario ou senha errada:
ele retorna o seguinte
o unico modo que ele retona erro e quando o codigo (1111-1111) esta errado:
sera que conseguem me ajudar ?