Erro geral: 1008 OCIStmtExecute: ORA-01008: nem todas as variáveis vinculadas
Estou fazendo uma janela de login e quando conto o número de linhas afetadas pela instrução SELECT para validar a conta e a senha, tenho um problema.
Erro: SQLSTATE [HY000]: Erro geral: 1008 OCIStmtExecute: ORA-01008: nem todas as variáveis estão associadas (ext \ pdo_oci \ oci_statement.c: 159)
Aqui está o problema (Fiz isso porque preciso contar o número de linhas quando seleciono SELECT. Tudo isso é para fazer login.)
Encontrei este pedaço de código na página oficial do PHP:Link PHP da página (Exemplo número 2)
$resultado = $base->query($sql);
if ($resultado) {
/* Comprobar el número de filas que coinciden con la sentencia SELECT */
if ($resultado->fetchColumn() > 0) {
/* Ejecutar la sentencia SELECT real y trabajar con los resultados */
echo "<h2>Adelante!!</h2>";
}
/* No coincide ningua fila -- hacer algo en consecuencia */
else {
print "Ninguna fila coincide con la consulta.";
}
}
CÓDIGO:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php
try
{
$base = new PDO('oci:dbname=localhost', 'hr', 'hr');
$base->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql= "SELECT * FROM DEPARTMENTS WHERE DEPARTMENT_ID=:login AND MANAGER_ID=:password";
$resultado = $base->prepare($sql);
$login = htmlentities(addslashes($_POST["login"]));
$password = htmlentities(addslashes($_POST["password"]));
$resultado->bindValue(":login", $login);
$resultado->bindValue(":password", $password);
$resultado->execute();
$resultado = $base->query($sql);
if ($resultado) {
if ($resultado->fetchColumn() > 0) {
echo "<h2>Adelante!!</h2>";
}
else {
print "Ninguna fila coincide con la consulta.";
}
}
}
catch(Exception $e)
{
die("Error: " .$e->getMessage());
}
?>
</body>
</html>