Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Múltiplos Uploads com PHP, Mysql e Ajax - #7 ModelCrud

03/11/2019

Na vídeoaula de hoje faremos a nossa ModelCrud que será responsável por agilizar nossa manipulação de selects, updates, deletes e inserts no nosso banco de dados.

Criando CRUD no PHP

A nossa ModelCrud será uma especialização da ModelConexao criada na última aula. Ela terá um método privado privateExecute que facilitará nosso trabalho na medida em que não será mais necessário ficar preparando as queries a todo momento. Os demais métodos serão públicos.

<?php
namespace Models;

class ModelCrud extends ModelConexao{

    private $crud;

    #Responsável pela preparação da query e execução
    private function prepareExecute($prep,$exec)
    {
        $this->crud=$this->conectaDB()->prepare($prep);
        $this->crud->execute($exec);
    }

    #Seleção de dados
    public function selectDB($fields , $table , $where , $exec)
    {
        $this->prepareExecute("select {$fields} from {$table} {$where}" , $exec);
        return $this->crud;
    }

    #Inserção de dados
    public function insertDB($table , $values , $exec)
    {
        $this->prepareExecute("insert into {$table} values ({$values})",$exec);
        return $this->crud;
    }

    #Delete de dados
    public function deleteDB($table , $where , $exec)
    {
        $this->prepareExecute("delete from {$table} where {$where}" , $exec);
        return $this->crud;
    }

    #Atualização de dados
    public function updateDB($table , $values , $where , $exec)
    {
        $this->prepareExecute("update {$table} set {$values} where {$where}",$exec);
        return $this->crud;
    }
}

Como se trata de uma classe de manipulação do banco de dados, ela deve ser criada dentro do diretório models.

Na raiz do projeto na index.php faremos alguns teste pra verificar se os métodos da ModelCrud estão todos funcionando:

$objCrud=new Models\ModelCrud();
#Insert
$objCrud->insertDB(
    "ads",
    "?,?,?,?",
    array(
        0,
        'title2',
        'content2',
        '2019-06-12 19:00:00'
    )
);

#Select
$b=$objCrud->selectDB(
    "*",
    "ads",
    "",
    array()
);
$f=$b->fetchAll(PDO::FETCH_ASSOC);
var_dump($f);

#Update
$objCrud->updateDB(
    "ads",
    "content=?",
    "id=?",
    array(
        'thiago',
        5
    )
);

#Delete
$objCrud->deleteDB(
    "ads",
    "id=?",
    array(
        4
    )
);

Sucesso nos códigos e na vida!

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Múltiplos Uploads com PHP, Mysql e Ajax - #6 DB e ModelConexão
Na aula de hoje realizaremos a criação do nosso banco de dados e faremos também a classe de conexao PDO ao banco MySql.
Saiba mais!
Múltiplos Uploads com PHP, Mysql e Ajax - #8 Formulário
Nessa videoaula estruturaremos o formulário que receberá o upload de arquivos, já criando toda a base com a tabela de arquivos e a barra de progresso.
Saiba mais!
MultiUploads
No curso de múltiplos uploads utilizando php, mysql e ajax trabalharemos com o envio de diferentes arquivos, barra de progresso e sem utilização de plugins.
Saiba mais!