Fatal error: Cannot access empty property in C:\wamp\www\TELA DE LOGIN\cadastrar.php on line 38
Boa tarde, to com o seguinte erro no meu código na hora de realizar um cadastro no banco de dados
Sou iniciante e estou seguindo um tutorial do Youtube de como criar uma tela de Login etc.. Segui os passos mas to com varios problemas para fazer funcionar
Esse é o erro:
( ! ) Fatal error: Cannot access empty property in C:\wamp\www\TELA DE LOGIN\cadastrar.php on line 38Call Stack#TimeMemoryFunctionLocation10.0000251608{main}( )..\cadastrar.php:0
Esse é o código PHP
<?php
class Usuario
{
private $pdo;
public $msgErro = "";
public function conectar($nome,$host,$usuario,$senha)
{
global $pdo;
global $msgErro;
try{
$pdo = new PDO("mysql:dbname=".$nome.";host=".$host,$usuario,$senha);}
catch (PDOException $e){
$msgErro = $e->getMessage();}
}
public function cadastrar($nome,$telefone,$email,$senha)
{
global $pdo;
//Verificar se já existe cadastro no Banco de Dados.
$sql = $pdo->prepare("SELECT id_usuario FROM usuarios WHERE email = ':e'");
$sql->bindValue(':e',$email);
$sql->execute();
if($sql->rowCount() > 0)
{
return false; // Ja está cadastrada
}
else
{
//Caso nao, cadastrar
$sql = $pdo->prepare("INSERT INTO usuarios(nome,telefone,email,senha) VALUES (:n, :t, :e, :s)");
$sql->bindValue(':n',$nome);
$sql->bindValue(':t',$telefone);
$sql->bindValue(':e',$email);
$sql->bindValue(':s',$senha);
$sql->execute();
return true;
}
}
public function logar($email,$senha)
{
global $pdo;
//Verificar se o email e senha estao cadastrados
$sql = $pdo->prepare ("SELECT id_usuario FROM usuarios WHERE email = :e AND senha = :s");
$sql->bindValue (':e',$email);
$sql->bindValue (':s',$senha);
$sql->execute();
if ($sql->rowCount() > 0)
{
//entrar no sistema (sessao)
$dado = $sql->fetch();
session_start();
$_SESSION['id_usuario'] = $dado ['id_usuario'];
return true; //Logado com sucesso!
}
else
{
return false;//Nao foi possivel logar
}
}
}
?>Discussão (1)
Carregando comentários...