Pegando a posição do banco de dados para o PHP
Galera estou com dificuldades nesse meu código, o objetivo dele é eu pegar o campo id (não especificamente a linha), usuario e senha e comparar com o que foi passado em um formulário HTML.
Estou com problema pois diz que não consigo pegar através da posição.
Ele retorna o seguinte erro: Fatal error: Uncaught Error: Cannot use object of type DaoUsuario as array in autentificar.php:8 Stack trace: #0 thrown in autentificar.php on line 8
Estou com problema pois diz que não consigo pegar através da posição.
<?php
session_start();
require_once(''''../Classes/DaoUsuario.php'''');
$autentificar = new DaoUsuario;
$usuario = $_POST[''''usuario''''];
$senha = $_POST[''''senha''''];
if($autentificar->consultar($id) > 0){
if ($usuario == $autentificar[1] and $senha == $autentificar[2]){
header(''''Location:painel-de-controle.php'''');
exit();
}
}else{
header(''''location:administrador.php'''');
session_destroy();
exit();
}
?>Ele retorna o seguinte erro: Fatal error: Uncaught Error: Cannot use object of type DaoUsuario as array in autentificar.php:8 Stack trace: #0 thrown in autentificar.php on line 8
Rodrigo
Curtidas 0
Melhor post
Alex William
18/10/2018
Uma coisa que eu notei:
Não seria:
DaoUsuario não é um metodo dentro da tua pagina? Ou uma estancia de classe?
$autentificar = new DaoUsuario;
Não seria:
$autentificar = new DaoUsuario();
DaoUsuario não é um metodo dentro da tua pagina? Ou uma estancia de classe?
GOSTEI 1
Mais Respostas
Rodrigo
18/10/2018
Sim, realmente acho que é isso. Obrigado.
GOSTEI 0
Rodrigo
18/10/2018
Mas a dúvida realmente era, está certo a sintaxe de eu puxar o id pelo banco através da posição?
GOSTEI 0
Alex William
18/10/2018
Mas a dúvida realmente era, está certo a sintaxe de eu puxar o id pelo banco através da posição?
Depende, tua estancia "DaoUsuario" retorna array para que você consiga acessar elas?
Tem como postar o codigo da "DaoUsuario.php" pra ver o que retorna a estancia?
GOSTEI 0
Rodrigo
18/10/2018
public function consultar($id){
$query = "SELECT * FROM {$this->tabela} WHERE id=:id";
try{
$operacao = $this->status->prepare($query);
$operacao->bindParam(":id",$id, PDO::PARAM_INT);
$operacao->bindParam(":usuario",$usuario, PDO::PARAM_INT);
$operacao->bindParam(":senha",$senha, PDO::PARAM_INT);
$operacao->execute();
$getRow = $operacao->fetch(PDO::FETCH_OBJ);
$usuario = $getRow->usuario;
$senha = $getRow->senha;
$objeto = new Usuario($id, $usuario, $senha);
$objeto->setId($id);
return $objeto;
} catch (PDOException $erro) {
echo $erro->getMessage();
}
}
Isso é uma das funções que possuem no DaoUsuario (essa seria a função de consultar)
$query = "SELECT * FROM {$this->tabela} WHERE id=:id";
try{
$operacao = $this->status->prepare($query);
$operacao->bindParam(":id",$id, PDO::PARAM_INT);
$operacao->bindParam(":usuario",$usuario, PDO::PARAM_INT);
$operacao->bindParam(":senha",$senha, PDO::PARAM_INT);
$operacao->execute();
$getRow = $operacao->fetch(PDO::FETCH_OBJ);
$usuario = $getRow->usuario;
$senha = $getRow->senha;
$objeto = new Usuario($id, $usuario, $senha);
$objeto->setId($id);
return $objeto;
} catch (PDOException $erro) {
echo $erro->getMessage();
}
}
Isso é uma das funções que possuem no DaoUsuario (essa seria a função de consultar)
GOSTEI 0