Siga-nos em...
Follow us on Twitter Follow us on Facebook Watch us on YouTube
Registro

Alpha Servers
Resultados 1 a 4 de 4

Tópico: PHP MVC com DAO

Visão do Encadeamento

  1. #1

    Avatar de xiscoss
    Data de Ingresso
    Aug 2010
    Localização
    Santa Catarina
    Posts
    343
    Agradecido
    144
    Agradeceu
    106
    Peso da Avaliação
    17

    Question PHP MVC com DAO

    Alguém poderia me fornecer algum exemplo mais sólido de uma estrutura com os recursos descritos no título? Pois estou desenvolvendo um mini "framework" no meu tempo livre e gostaria de obter uma forma "correta" de como aplicar DAO ao MVC. Abaixo segue o código atual:

    Controller
    Código PHP:
    <?php
    namespace Main\Controller;

    use 
    Main\StartUp;
    use 
    Main\Model\Main as Model;
    use 
    Alpha\Template\Template;

    class 
    Main extends StartUp {
        public function 
    start ()
        {
            
    $model = new Model();
            
    $template = new Template();
            
    $template->title "test";
            
    $template->render("main\main\start");
        }

        public function 
    __destruct ()
        {
            
    parent::__destruct();
        }

        public function 
    __construct ()
        {
            
    parent::__construct();
        }
    }
    Model
    Código PHP:
    <?php
    namespace Main\Model;

    use 
    Main\Model\DAO\Main as DAO;

    class 
    Main extends DAO {
        public function 
    __destruct ()
        {
            
    parent::__destruct();
        }

        public function 
    __construct ()
        {
            
    parent::__construct();
        }
    }
    DAO
    Código PHP:
    <?php
    namespace Main\Model\DAO;

    use 
    Alpha\Database\Database;

    class 
    Main extends Database {

        public function 
    delete ()
        {
            
    $pdo $this->pdo;
            
    $pdo->beginTranstaction();
            
            try {
                
    /*$stmt = "";
                $pdo->prepare($stmt);
                $pdo->bindParam(, , $this->bindType());
                $pdo->execute();*/

                
    $pdo->commit();
            } catch (
    PDOException $Exception) {
                
    $pdo->rollBack();
                throw new 
    PDOException($Exception->getMessage());
            }
        }

        public function 
    update ()
        {
            
    $pdo $this->pdo;
            
    $pdo->beginTranstaction();
            
            try {
                
    /*$stmt = "";
                $pdo->prepare($stmt);
                $pdo->bindParam(, , $this->bindType());
                $pdo->execute();*/

                
    $pdo->commit();
            } catch (
    PDOException $Exception) {
                
    $pdo->rollBack();
                throw new 
    PDOException($Exception->getMessage());
            }
        }

        public function 
    read ()
        {
            return array();
        }

        public function 
    create ()
        {
            
    $pdo $this->pdo;
            
    $pdo->beginTranstaction();
            
            try {
                
    /*$stmt = "";
                $pdo->prepare($stmt);
                $pdo->bindParam(, , $this->bindType());
                $pdo->execute();*/

                
    $pdo->commit();
            } catch (
    PDOException $Exception) {
                
    $pdo->rollBack();
                throw new 
    PDOException($Exception->getMessage());
            }
        }

        public function 
    __destruct ()
        {
            
    parent::__destruct();
        }

        public function 
    __construct ()
        {
            
    parent::__construct("sqlsrv:Server=192.168.1.3;Database=;""sa"""null);
        }
    }
    Última edição por xiscoss; 19-06-2015 às 12:56 AM.
    Aerocool DS 200 Lite/ Corsair GS600/ ASRock Fatal1ty Z97 Killer/ Intel Core i5 4670K 3,40 GHz 6MB Cache/ Corsair Water Cooler H80i/ Sapphire R9270X Dual-X 2GB OC/ Hyper X Fury 2x8GB 1866Mhz DDR3/ SSD Kingston 120GB/ HDD Samsung 500GB

 

 

Informações de Tópico

Usuários Navegando neste Tópico

Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •