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

MVC Completo - #17 Model III (Pesquisa)

25/04/2018

Nessa aula continuamos com nosso model, entretanto trabalharemos com a parte de pesquisa e seleção no MVC.

Criando Pesquisa e Seleção no MVC

Para realizar a pesquisa e seleção vamos utilizar o mesmo ControllerCadastro e ClassCadastro da última aula, entretanto implementando os métodos selecionaClientes() e seleciona(). Vamos criar também um formulário específico para essa consulta.

Formulário de Pesquisa no MVC / PHP

Vamos iniciar implementando nosso formulário de pesquisa, que é bem semelhante ao do executado na última aula.

<h1>SELEÃ?Ã?O DE DADOS</h1>
<form name="FormSelect" id="FormSelect" action="<?php echo DIRPAGE.'cadastro/seleciona'; ?>" method="post">
    Nome: <input type="text" name="Nome" id="Nome"><br>
    Sexo:
    <select name="Sexo" id="Sexo">
        <option value="">Selecione</option>
        <option value="Masculino">Masculino</option>
        <option value="Feminino">Feminino</option>
    </select><br>
    Cidade: <input type="text" name="Cidade" id="Cidade"><br>
    <input type="submit" value="Pesquisar">
</form>

Acesso ao Banco de Dados - Model MVC

Para acessar o banco de dados somente nossa ClassCadastro pode fazer, conforme especificações do MVC. Segue abaixo o código:

#Acesso ao banco de dados com seleção
protected function selecionaClientes($Nome , $Sexo , $Cidade)
{
    $Nome='%'.$Nome.'%';
    $Sexo='%'.$Sexo.'%';
    $Cidade='%'.$Cidade.'%';
    $BFetch=$this->Db=$this->conexaoDB()->prepare("select * from teste where Nome like :nome and Sexo like :sexo and Cidade like :cidade");
    $BFetch->bindParam(":nome",$Nome,\PDO::PARAM_STR);
    $BFetch->bindParam(":sexo",$Sexo,\PDO::PARAM_STR);
    $BFetch->bindParam(":cidade",$Cidade,\PDO::PARAM_STR);
    $BFetch->execute();

    $I=0;
    while($Fetch=$BFetch->fetch(\PDO::FETCH_ASSOC)){
        $Array[$I]=['Nome'=>$Fetch['Nome'],'Sexo'=>$Fetch['Sexo'],'Cidade'=>$Fetch['Cidade']];
        $I++;
    }
    return $Array;
}

O código acima compilará todos os resultados em um Array que será retornado.

Controller de busca no MVC

Nosso controller de busca pegará o retorno do banco de dados e enviará o resultado para nossa view.

#Selecionar e exibir os dados do banco de dados
public function seleciona()
{
    $this->recVariaveis();
    $B=$this->selecionaClientes($this->Nome, $this->Sexo,$this->Cidade);

    echo "
        <table border='1'>
            <tr>
                <td>Nome</td>
                <td>Sexo</td>
                <td>Cidade</td>
            </tr>
            ";
            foreach($B as $C){
            echo "
            <tr>
                <td>$C[Nome]</td>
                <td>$C[Sexo]</td>
                <td>$C[Cidade]</td>
            </tr>
            ";
            }
            echo "
        </table>
    ";
}
Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

MVC Completo - #16 Model II (Inserção)
Nessa aula continuaremos nosso trabalho no model. Vamos iniciar fazendo uma classe de inserção no banco de dados.
Saiba mais!
MVC Completo - #18 Model IV (Deletar)
Hoje vamos implementar a parte de deletar dados do nosso model. Vamos aproveitar a oportunidade para usar o Ajax com PHP e JQuery também.
Saiba mais!
MVC Completo
Neste curso aprenderemos como criar o padrão de projeto MVC completo, analisando desde sua estrutura até a programação.
Saiba mais!