Ir para conteúdo
Fórum Script Brasil
  • 0

Orientado objeto em php


Thick

Pergunta

Boa tarde, pessoal

to começando a estudar Orientado objeto em php...fiz um script de login funcionou direitinho porem gostaria de saber sé é realmente dessa maneira que se trabalha com OO??....sabe como é OO um conceito bem diferente de estruturado...kkkkk

Estrututra do Banco de Dados

CREATE TABLE `usuarios` (
  `nome` varchar(50) NOT NULL,
  `usuario` varchar(50) NOT NULL,
  `senha` varchar(40) NOT NULL
)
Index.php
<html>
<head>
      <title>Login</title>
      <style type="text/css">
          #login
        {
              position:absolute;
              left:43%;
               top:40%;
        }
      </style>
</head>
<body>
<form action="logar.php" method="post">
    <table id="login" border='0'>
        <tr>
             <td>Login:</td>
               <td><input type="text" value="" name="login" size=20 maxlength=15/></td>
       </tr>
       <tr>
               <td>Senha:</td>
             <td><input type="password" value="" name="senha" size=20 maxlength=15/></td>
       </tr>
       <tr>
               <td><input type="submit" value="Entrar" style="cursor:pointer"/></td>
               <td><input type="reset" value="Reset" style="cursor:pointer"/></td>
       </tr>
               <tr>
             <td colspan="2"><a href=cadastro.php>Cadastrar-se</a></td>
       </tr>
     </table>
</form>
</body>
</html>
logar.php
<?
function __autoload($class_name) {
    include $class_name . '.class.php';
}

$login = htmlspecialchars($_POST['login']); //recebe o login do formulario index
$senha = $_POST['senha']; //recebe a senha do formulario index

$obj = new bancoDados; // Instanciando a classe
$obj->conectar(); // Realiza a conexão
$obj->selecionarDB(); // Seleciona o banco de dados

$usuario = new usuario("",$login,$senha); // Instanciando a classe
$usuario->logar();   //chama o metodo de logar o usuario no sistema
?>
usuario.class.php
<?
//Classe do usuario
class usuario{
    private $nome; //Nome do usuario
    private $login; //Login do usuario
    private $senha; //Senha do Usuario

    //função de contrução
    function __construct($nome2,$login2,$senha2){
        $this->nome = $nome2;
        $this->login = $login2;
        $this->senha = md5($senha2);
    }

    //Função que cadastro o usuario no banco de dados
    function cadastrar(){
        $insert = mysql_query("INSERT INTO `teste`.`usuarios` (`nome`, `usuario`, `senha`)
                                        VALUES ('$this->nome', '$this->login', '$this->senha');");

        if ($insert) {
        return true;

        }
        else {
        return false;
        }

    }

    //Função de logar o usuario no sistema
    function logar(){
        $consulta = mysql_query("select * from usuarios where usuario = '$this->login' and senha='$this->senha'");
        $campo = mysql_num_rows($consulta);
           if ($campo == 0){
               header("Location: index.php");
          }
        else{
            session_start();
             $_SESSION['login_usuario'] = $this->login;
              $_SESSION['senha_usuario'] = $this->senha;

            header("Location: home.php");
        }
      }

}
?>
bancoDados.class.php
<?
//Classe para interação com o banco de dados
class bancoDados{
    private $host;  //Nome do host
    private $user;  //Nome do usuario do banco de dados
    private $pass;  //Senha do banco de dados
    private $db;    //Nome do banco de dados

    //função de contrução
    function __construct(){
        $this->host = 'localhost';
        $this->user = 'root';
        $this->pass = '1111111';
        $this->db = 'teste';
    }

    //Função para conexão ao banco de dados
    function conectar(){
      $con = mysql_connect($this->host, $this->user, $this->pass) or die($this->erro(mysql_error()));
      return $con;
    }

    //Função para seleção do banco de dados a ser usado
    function selecionarDB(){
      $sel = mysql_select_db($this->db) or die($this->erro(mysql_error()));
      if ($sel) {
         return true;
      } else {
         return false;
      }
    }

    //Função para exibir os error
    function erro($erro){
      echo $erro;
    }
}
?>

desde já valeuuuuu pessoal

Bandiera

Editado por Thick
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...