Escolar Documentos
Profissional Documentos
Cultura Documentos
Esta é uma série de tutoriais, na qual você vai aprender uma forma eficaz
de implementar um sistema de CRUD completo, usando o Bootstrap no
front-end e PHP com MySQL no back end.
Agora, neste tutorial, você vai ver como criar os arquivos funções para
usar em um módulo de cadastro de clientes. Depois disso, vamos criar
uma listagem inicial com os botões de acesso para as funcionalidades do
cadastro, como inserção, edição e exclusão de cada registro.
Ao final deste tutorial, você vai ter uma estrutura básica de listagem de
clientes para reaproveitar no projeto, na qual o usuário vai poder acessar
as funcionalidades de CRUD, do cadastro de clientes.
Antes de Começar
Eu vou assumir que você já está com o seu ambiente de desenvolvimento
funcionando, e que já passou pela parte 1 e pela parte 2 desta série.
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 1/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
1 <?php
2
3 require_once('../config.php');
4 require_once(DBAPI);
5
6 $customers = null;
7 $customer = null;
8
9 /**
10 * Listagem de Clientes
11 */
12 function index() {
13 global $customers;
14 $customers = find_all('customers');
15 }
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 2/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Observe que tem uma função find_all() sendo usada, é ela que traz os
dados. Mas, essa função não existe ainda.
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 3/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
1 <?php
2
3 /**
5 */
7
8 $database = open_database();
9 $found = null;
10
11 try {
12 if ($id) {
14 $result = $database->query($sql);
15
16 if ($result->num_rows > 0) {
17 $found = $result->fetch_assoc();
18 }
19
20 } else {
21
22 $sql = "SELECT * FROM " . $table;
23 $result = $database->query($sql);
24
25 if ($result->num_rows > 0) {
26 $found = $result->fetch_all(MYSQLI_ASSOC);
27
28 /* Metodo alternativo
29 $found = array();
30
31 while ($row = $result->fetch_assoc()) {
32 array_push($found, $row);
33 } */
34 }
35 }
37 $_SESSION['message'] = $e->GetMessage();
38 $_SESSION['type'] = 'danger';
39 }
40
41 close_database($database);
42 return $found;
43 }
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 4/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Se for passado algum id, nos parâmetros, a pesquisa será feita por esse
id, que é a chave primária da tabela (como definimos no começo).
1 <?php
2
3 /**
5 */
7 return find($table);
8 }
1 <?php
2 require once('functions php');
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 5/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
2 require_once( functions.php );
3 index();
4 ?>
5
6 <?php include(HEADER_TEMPLATE); ?>
7
8 <header>
9 <div class="row">
10 <div class="col-sm-6">
11 <h2>Clientes</h2>
12 </div>
16 </div>
17 </div>
18 </header>
19
20 <?php if (!empty($_SESSION['message'])) : ?>
21 <div class="alert alert-<?php echo $_SESSION['type']; ?> alert-di
22 <button type="button" class="close" data-dismiss="alert"
27
28 <hr>
29
30 <table class="table table-hover">
31 <thead>
32 <tr>
33 <th>ID</th>
34 <th width="30%">Nome</th>
35 <th>CPF/CNPJ</th>
36 <th>Telefone</th>
37 <th>Atualizado em</th>
38 <th>Opções</th>
39 </tr>
40 </thead>
41 <tbody>
44 <tr>
48 <td>00 0000-0000</td>
49 <td><?php echo $customer['modified']; ?></td>
55 </a>
56 </td>
57 </tr>
60 <tr>
61 <td colspan="6">Nenhum registro encontrado.</td>
62 </tr>
65 </table>
66
67 <?php include(FOOTER_TEMPLATE); ?>
Depois, você pode ver a tabela de registros. Dentro dela tem um loop
(usando o foreach) que vai pegar cada registro da variável
$customers e criar uma linha nessa tabela e exibir os dados. Como
usamos os dados de forma associativa (lá na camada de acesso a
dados), é possível obter esses dados pelo nome das colunas.
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 7/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
A linha 49, mostra como você pode criar links para operações nos
registros da tabela. Basta passar o ID como parâmetro, e a função no
backend (do arquivo functions.php) deve ler e usar esse parâmetro.
Até aqui, você deve ter uma tela, mais ou menos, como essa:
crud-bootstrap-php
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 8/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
css
customers
functions.php
index.php
fonts
inc
database.php
footer.php
header.php
js
config.php
index.php
Próximos Passos…
…
Tutoriais
Bootstrap, PHP
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 9/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Carlos
06/01/2016 às 07:08
Ruan Carvalho
06/01/2016 às 08:43
Abs.
Ruan
Carlos
06/01/2016 às 12:49
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 10/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Eduardo Silva
06/02/2016 às 18:10
Marcello
07/05/2016 às 20:37
Marcello
07/05/2016 às 20:39
Marcello
07/05/2016 às 21:18
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 11/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
/var/www/bcrud/inc/database.php … O
que tem haver com a versão do driver do
MYSQL. Estou usando o php 5.3.10, que
suportamente ja deveria estar correto, mas
nao está então estou procurando uma
solução para substituir esta função.
mysqli_result::fetch_all() requires MySQL
Native Driver (mysqlnd).
Ruan Carvalho
07/05/2016 às 23:41
Sds.
Ruan
Julio
06/06/2016 às 11:56
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 12/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
06/06/2016 às 11:59
Obrigado, Julio.
Julio
06/08/2016 às 08:10
Ruan Carvalho
06/13/2016 às 10:27
Luandierison
09/27/2016 às 09:23
Ruan Carvalho
09/27/2016 às 12:34
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 13/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Paolo
06/08/2016 às 12:04
Boa tarde,
Antonio
06/08/2016 às 13:40
Wellington Felix
06/09/2016 às 15:35
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 14/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
06/13/2016 às 10:25
Paulo Eduardo
06/09/2016 às 16:09
Ruan Carvalho
06/13/2016 às 10:23
Obrigado, Paulo!
Vou verificar essas imagens.
Wemerson
06/11/2016 às 14:24
Ruan Carvalho
06/13/2016 às 10:20
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 15/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Claudio
06/11/2016 às 18:27
Ruan Carvalho
06/13/2016 às 10:20
Obrigado, Claudio!
Matheus
07/05/2016 às 16:53
Valério Pinto
07/08/2016 às 08:47
Ruan Carvalho
07/08/2016 às 14:30
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 16/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Obrigado, Valério!
Vai continuar, sim. Estive ocupado com alguns
projetos, por isso a demora. Mas devo já voltar a
publicar essa série.
Ari Rodrigues
07/18/2016 às 09:10
Valeu…
Ruan Carvalho
07/18/2016 às 11:23
Obrigado, Ari.
Sds.
Ruan
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 17/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
07/20/2016 às 16:28
Washington Campos
07/21/2016 às 15:32
Muito obrigado.
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 18/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Washington Campos
07/21/2016 às 16:00
Parabéns.
Ruan Carvalho
07/21/2016 às 16:03
Obrigado Washington!
Abs.
Ruan
Eduardo Santos
08/04/2016 às 11:10
Obrigado!
Gerson Correia
08/10/2016 às 15:55
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 19/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Henrique
08/23/2016 às 08:35
Nicolas Pastorello
08/23/2016 às 11:37
wilson pascoal
09/05/2016 às 11:43
Werdeson
09/16/2016 às 21:58
Ruan Carvalho
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 20/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
09/27/2016 às 12:36
Bruno Silva
10/03/2016 às 16:09
Olá
Tenho uma duvida no CSS. Tem alguns CSS que não sei
da onde vem. Por exemplo, na parte dois
href=”css/style.css”
Ruan Carvalho
10/03/2016 às 16:17
Gustavo
10/10/2016 às 23:29
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 21/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
https://gsftecnologia.com.br/crud-bootstrap-
php/customers/index.php
Ruan Carvalho
10/10/2016 às 23:42
Dielson
10/23/2016 às 20:49
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 22/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
11/09/2016 às 14:56
Abs.
Dieure
11/09/2016 às 13:21
Dieure
11/09/2016 às 13:51
Dieure
11/09/2016 às 14:31
$found = $result->fetch_all(MYSQLI_ASSOC);
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 23/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
11/09/2016 às 14:42
Abs..
Ruan
FERNANDO BITENCOURT
11/23/2016 às 18:31
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 24/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ricardo
12/09/2016 às 11:50
—>Parent Directory
—>functions.php
—>index.php
Ruan Carvalho
12/09/2016 às 13:46
Marcos
12/15/2016 às 13:50
Caro Ruan,
Grato
Ruan Carvalho
12/18/2016 às 10:42
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 25/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Abs.
Ruan
Ruan
Marcos
12/22/2016 às 12:46
Grato !
Obrigado
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 26/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Sérgio Santos
12/18/2016 às 16:23
Poderia me ajudar?
Igor Federizi
12/23/2016 às 07:57
att,
Igor Federizi
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 27/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
lazaro
12/23/2016 às 23:53
Emilio Araujo
12/27/2016 às 13:34
Grato!
Ruan Carvalho
12/28/2016 às 12:33
Edinei
12/29/2016 às 17:13
Ruan Carvalho
12/29/2016 às 17:48
clear_messages().
Edinei
12/30/2016 às 17:16
Jfjunior86
01/12/2017 às 14:12
Márcio Rangel
01/26/2017 às 17:25
thlobo
02/15/2017 às 16:43
André
03/29/2017 às 09:38
Ruan Carvalho
03/31/2017 às 11:21
https://webdevacademy.com.br/tutoriais/crud-
bootstrap-php-mysql-parte4/
Dênis KBça
03/30/2017 às 13:49
Olá Ruan!
Já revisei todo o código e testei em mais de um SERVER
e só da o erro 500.
Você sabe o que pode ser?
PS: Quando comento o index(); ele funciona mas não
traz os dados por estar comentado…
Abraços
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 30/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
Ruan Carvalho
03/31/2017 às 11:30
TAGS
Bootstrap CRUD Drupal HTML & CSS JavaScript jQuery PHP SQL Tooling
WordPress
MAIS ACESSADOS
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 31/32
17/09/2021 22:34 CRUD com Bootstrap, PHP & MySQL – Parte III - Web Dev Academy
https://webdevacademy.com.br/tutoriais/crud-bootstrap-php-mysql-parte3/ 32/32