calintro 0 Denunciar post Postado Junho 18, 2008 Boa noite, Estou fazendo um sistema que deve cadastrar no BD com base em dados de um formulário. Porém, dessa vez quero usar POO, então criei a classe: Vendedor.class.php CODE <?php include('Conectar.class.php'); class Vendedor { public $nome; public $email; public $senha; public $conf_senha; public function __construct($nome, $email, $senha, $conf_senha) { $this->nome = $nome; $this->email = trim($email); $this->senha = trim($senha); $this->conf_senha = trim($conf_senha); } public function CadastrarVendedor() { if (isset($this->nome)) { if (isset($this->email)) { if (isset($this->senha)) { if ($this->senha == $this->conf_senha) { Conectar(); $verif_email = mysql_query("SELECT * FROM vendedores WHERE email='$this->email'"); if(mysql_num_rows($verif_email) == 0) { mysql_query("INSERT INTO vendedores(nome, email, senha) VALUES($this->nome, $this->email, $this->senha)"); Fechar(); } else { echo "ERRO: Email já cadastrado"; } } else { echo "ERRO: As senhas digitadas não conferem"; } } else { echo "ERRO: Insira uma senha"; } } else { echo "ERRO: Insira um email"; } } else { echo "ERRO: Insira um nome"; } } public function LogarVendedor() { if(isset($this->email)) { if(isset($this->senha)) { Conectar(); $cont = mysql_query("SELECT * FROM vendedores WHERE email='$this->email' AND senha='$this->senha'"); if(mysql_num_rows($cont) > 0) { echo "LOGADO"; Fechar(); } } else { echo "ERRO: Insira uma senha"; } } else { echo "ERRO: Insira um email"; } } } ?> Conectar.class.php CODE <?php class Conectar{ public $host = 'localhost'; public $login = 'root'; public $senha = ''; public $db = 'MDesigner'; function Conectar() { mysql_connect($this->host, $this->login, $this->senha); mysql_select_db($this->db); } function Fechar(){ mysql_close(); } } ?> O pedaço do formulário usado para cadastrar: CODE include ('classes/Vendedor.class.php'); if(!empty($_POST['nome'])) { $nome = $_POST['nome']; $email = $_POST['email']; $senha = $_POST['senha']; $conf_senha = $_POST['conf_senha']; $vendedor = new Vendedor($nome, $email, $senha, $conf_senha); CastrarVendedor(); } O erro dado é: Fatal error: Call to undefined function CastrarVendedor() on line 52 Qual o erro exatamente? Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Junho 18, 2008 Esqueceu isso: $vendedor = new Vendedor($nome, $email, $senha, $conf_senha); $vendedor->CadastrarVendedor(); Compartilhar este post Link para o post Compartilhar em outros sites
calintro 0 Denunciar post Postado Junho 18, 2008 Agora deu isso: Call to undefined method Vendedor::CastrarVendedor() Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Junho 18, 2008 não é Castrar, é Cadastrar Compartilhar este post Link para o post Compartilhar em outros sites
calintro 0 Denunciar post Postado Junho 18, 2008 Hahahahaha, nem havia percebido :lol: Agora não aparece erro nenhum, porém não cadastra nada no BD... E eu arrumei lá emcima onde tava "Conectar();" por: $con = new Conectar(); $con->Conectar(); O que estou fazendo de errado? :( Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Junho 18, 2008 Porque que tu não inclui as funções de conexão junto a mesma class ? Compartilhar este post Link para o post Compartilhar em outros sites
calintro 0 Denunciar post Postado Junho 18, 2008 Porque que tu não inclui as funções de conexão junto a mesma class ? Já descobri o erro hehe... O problema era a falta de ' nos VALUES do INSERT Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Junho 19, 2008 Ótimo, abraços. Compartilhar este post Link para o post Compartilhar em outros sites