Ir ao conteúdo
  • Cadastre-se

Posts recomendados

Postado

Pessoal estou a algum tempo tentando achar o erro, prepare() on null no meu php, durante o select em uma tabela, mas não acho de jeito nenhum. Me ajudem por favor.

 

Fatal error: Uncaught Error: Call to a member function prepare() on null in C:\wamp64\www\ProjetosPHP\final\App\Model\VoadorDao.php on line 29

Error: Call to a member function prepare() on null in.

 

O codigo do meu select.

$sql = 'SELECT * FROM voador';


		$stmt = Conexao::getConn()->prepare($sql); // essa é a linha que parece estar errada
		$stmt->execute();

		if($stmt->rowCount() > 0):
			$resultado = $stmt->fetchAll(PDO::FETCH_ASSOC);
			return $resultado;
		else:
			return [];
		endif;

 

Porém esse erro só acontece quando eu tento exibir utilizando o foreach. quando eu utilizo o var_dump ali no $resultado, ele mostra corretamente.

 

 

 


$pessoa = new PessoaDao();

$PessoarDao->read();


foreach($PessoaDao->read() as $pessoa):
  echo $pessoa['nome']."<br>".$Pessoa['qtd_membro']."<hr>";
endforeach;

 

Postado

@1231Lucas123 Bom o erro está no retorno do método getConn() dá sua class Conexão, provavelmente ele não está retornado um Object PDO, é sim um valor NULL. Agora o motivo do retorno com o valor NULL, bom pode ser falha na conexão com o banco de dados.

 

Tente isso e verifique o retorno.

$servername = "localhost"; // Host do bando de dados.
$username = "username"; // Usuário que vai se connectar com o banco de dados
$password = "password"; // Senha do usuário
 
try {
  $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password); // conexão padrão para DB em MYSQL
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  echo "Connected successfully";
} catch(PDOException $e) {
  echo "Connection failed: " . $e->getMessage();
}

Caso sua conexão esteja sendo bem-sucedida, envie a class inteira par que possamos avaliar a possível causa do erro.

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...