Advertisement
Guest User

Objeto DAO

a guest
Feb 9th, 2016
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.23 KB | None | 0 0
  1. <?php
  2.  
  3. namespace DAL;
  4.  
  5. use Model\Comentario;
  6. use DAL\Banco;
  7.  
  8. class ComentarioDAO {
  9.  
  10.     private $Banco;
  11.  
  12.     public function __construct() {
  13.         $this->Banco = new Banco();
  14.     }
  15.  
  16.     public function Cadastrar(Comentario $Comentario) {
  17.         try {
  18.  
  19.             $sql = "INSERT INTO comentario (titulo, texto, data_postagem, codigo_pai) VALUES (:titulo, :texto, :data_postagem, :codigo_pai)";
  20.  
  21.             $param = array(
  22.                 ":titulo" => $Comentario->getTitulo(),
  23.                 ":texto" => $Comentario->getTexto(),
  24.                 ":data_postagem" => date("Y/m/d"),
  25.                 ":codigo_pai" => $Comentario->getCodigoPai()
  26.             );
  27.             return $this->Banco->ExecuteNonQuery($sql, $param);
  28.         } catch (PDOException $ex) {
  29.             echo "ERRO: {$ex->getMessage()}";
  30.         }
  31.     }
  32.  
  33.     public function RetornarTudo() {
  34.         try {
  35.             $sql = "SELECT codigo, titulo, data_postagem FROM comentario WHERE codigo_pai IS NULL ORDER BY codigo DESC";
  36.  
  37.             $dt = $this->Banco->ExecuteQuery($sql);
  38.             $Comentarios = [];
  39.  
  40.             foreach ($dt as $result) {
  41.                 $coment = new Comentario();
  42.  
  43.                 $coment->setTitulo($result["titulo"]);
  44.                 $coment->setDataPostagem($result["data_postagem"]);
  45.                 $coment->setCodigo($result["codigo"]);
  46.  
  47.                 $Comentarios[] = $coment;
  48.             }
  49.  
  50.             return $Comentarios;
  51.         } catch (PDOException $ex) {
  52.             echo "ERRO: {$ex->getMessage()}";
  53.             return null;
  54.         }
  55.     }
  56.  
  57.     public function RetornarComentarioCod($cod) {
  58.         try {
  59.             $sql = "SELECT * FROM comentario WHERE codigo = :codigo";
  60.  
  61.             $param = array(":codigo" => $cod);
  62.  
  63.             $dt = $this->Banco->ExecuteQueryOneRow($sql, $param);
  64.  
  65.  
  66.             $coment = new Comentario();
  67.  
  68.             $coment->setTitulo($dt["titulo"]);
  69.             $coment->setDataPostagem($dt["data_postagem"]);
  70.             $coment->setCodigo($dt["codigo"]);
  71.             $coment->setTexto($dt["texto"]);
  72.  
  73.             return $coment;
  74.         } catch (PDOException $ex) {
  75.             echo "ERRO: {$ex->getMessage()}";
  76.             return null;
  77.         }
  78.     }
  79.  
  80.     public function RetornarSubComentarios($cod) {
  81.        
  82.         try {
  83.             $sql = "SELECT * FROM comentario WHERE codigo_pai = :codigo";
  84.  
  85.             $param = array(":codigo" => $cod);
  86.  
  87.             $dt = $this->Banco->ExecuteQuery($sql, $param);
  88.  
  89.             $Comentarios = [];
  90.  
  91.             foreach ($dt as $result) {
  92.                 $coment = new Comentario();
  93.  
  94.                 $coment->setTitulo($result["titulo"]);
  95.                 $coment->setDataPostagem($result["data_postagem"]);
  96.                  $coment->setTexto($result["texto"]);
  97.                 $coment->setCodigo($result["codigo"]);
  98.  
  99.                 $Comentarios[] = $coment;
  100.             }
  101.  
  102.             return $Comentarios;
  103.         } catch (PDOException $ex) {
  104.             echo "ERRO: {$ex->getMessage()}";
  105.             return null;
  106.         }
  107.     }
  108.  
  109.     /*
  110.       Public function Cadastrar() {
  111.       try {
  112.  
  113.       } catch (PDOException $ex) {
  114.       echo "ERRO: {$ex->getMessage()}";
  115.       }
  116.       }
  117.  
  118.      */
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement