backend é a estrutura que possibilita a operação do sistema, enquanto o front-end é responsável pela parte visual, como apresentação, design, linguagens, cores, entre outros ▪ Parte da aplicação que tem duas responsabilidades principais: executar lógicas mais complexas e armazenar os dados da aplicação. ▪ Back-end é executado normalmente em servidores conectados na Internet.
garante que determinados dados da aplicação fiquem salvos mesmo após o encerramento da aplicação e que possam ser recuperados. ▪ A Persistência de dados pode ser conseguida por armazenamento em qualquer meio físico recuperável. Um dos mais comuns é o Banco de Dados. ▪ Qualquer site/aplicativo que armazena informações mesmo depois de reiniciar o navegador provavelmente utiliza um Banco de Dados. E-commerces, Notícias, Cadastro de Clientes, Redes sociais etc. Persistência de Dados IFSUL-Sapiranga | Desenvolvimento back-end com PHP 5
conexão e consultas. (3) O SGBD retorna um objeto (resultSet) para o PHP Persistência de dados (1) O desenvolvedor manipula as funções... (4) …etrata os resultados IFSUL-Sapiranga | Desenvolvimento back-end com PHP 6
* FROM tabela'; $conjunto_de_resultado = executa_consulta_no_bd($conexao, $consulta); $resultado = transforma_em_array($conjunto_de_resultado); foreach ($resultado as $campo=>$valor) { (...) } ?> Persistência de dados IFSUL-Sapiranga | Desenvolvimento back-end com PHP 7
acesso(usuário e senha) 3. Conectar ao SGDB - MySQL 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 8
acesso(usuário e senha) 3. Conectar ao SGDB - MySQL 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 9
acesso(usuário e senha) 3. Conectar ao SGDB - MySQL 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 13
de SQL, deve ser feita através de "instruções preparadas" (prepared statements). 1. Definir uma consulta SQL com espaços reservados (placeholders ?) no lugar dos valores. 2. Vincular variáveis aos placeholders ?, especificando as variáveis e seus tipos (i: integer, d: double, s: string, b: blob). 3. Executar a consulta. 5. Executar consultas no banco de dados $consulta = $mysqli->prepare("SELECT * FROM tabela WHERE coluna = ?"); $consulta->bind_param("s", $variavel); $consulta->execute(); IFSUL-Sapiranga | Desenvolvimento back-end com PHP 14
?)"); $consulta->bind_param("is", $_POST['id'], $_POST['nome']); $consulta->execute(); $consulta->close(); $consulta = $mysqli->prepare("UPDATE tabela SET nome = ? WHERE id = ?"); $consulta->bind_param("si", $_POST['nome'], $id); $consulta->execute(); $consulta->close(); $consulta = $mysqli->prepare("DELETE FROM tabela WHERE id = ?"); $consulta->bind_param("i", $id); $consulta->execute(); $consulta->close(); 5. Executar consultas no banco de dados IFSUL-Sapiranga | Desenvolvimento back-end com PHP 15
não validado, podendo ser qualquer coisa que o usuário queira inserir! Por exemplo: */ $usuario = $_POST['usuario']; // Aqui foi inserido: Alcione $senha = $_POST['senha']; // Aqui foi inserido: ' OR ''=' // Consulta no banco para ver se o usuário pode autenticar $consulta = "SELECT * FROM users WHERE usuario='$usuario' AND senha='$senha';"; echo $consulta; ?> SELECT * FROM users WHERE usuario=‘Alcione' AND senha='' OR ''=''; 5. Executar consultas no banco de dados IFSUL-Sapiranga | Desenvolvimento back-end com PHP 16
acesso(usuário e senha) 3. Conectar ao SGDB - MySQL 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 18
WHERE coluna = ?"); $consulta->bind_param("s", $variavel); $consulta->execute(); Os resultados podem ser recuperados através do método getResult(). $resultado = $consulta->get_result(); Ao executar uma consulta, o resultado (e outras informações) pode ser acessado através do objeto mysqli. IFSUL-Sapiranga | Desenvolvimento back-end com PHP 19
do método getResult(). $resultado = $consulta->get_result(); E então devem ser formatados como um array. Como um array associativo: $resultado->fetch_all(MYSQLI_ASSOC); Como um array numérico: $resultado->fetch_all(MYSQLI_NUM) IFSUL-Sapiranga | Desenvolvimento back-end com PHP 20
linha a linha <?php … $consulta = $mysqli->prepare("SELECT id, nome FROM tabela WHERE id = ?"); $consulta->bind_param("i", $id); $consulta->execute(); $resultado = $consulta->get_result(); echo "<table><th>ID</th><th>NOME</th>"; while ($linha = $resultado -> fetch_assoc()) { echo "<tr><td>" . $linha['id'] . "</td><td>" . $linha['nome'] . "</td></tr>"; } echo "</table>"; ?> id nome 1 Alcione 2 Cassiane IFSUL-Sapiranga | Desenvolvimento back-end com PHP 24
acesso(usuário e senha) 3. Conectar ao SGDB - MySQL 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 25
script acaba, mas podem ser fechadas antes $consulta->close(); $mysqli->close(); 7. Fechar a conexão IFSUL-Sapiranga | Desenvolvimento back-end com PHP 26
2. Ter um usuário e uma senha no SGBD 3. Conectar ao SGDB (MySQL) 4. Selecionar o Banco de Dados 5. Executar consultas no Banco de Dados. 6. Exibir os resultados 7. Fechar a conexão. Back-end PHP conectando MySQL IFSUL-Sapiranga | Desenvolvimento back-end com PHP 27
de 3 discentes, fazer a atividade e postar no moodle. Na próxima aula os grupos apresentam uns para os outros No decorrer da semana, vou estar a tarde na sala de atendimento tirando duvidas e dando dicas
THOMSON, Laura. PHP e MySQL web development/ 5th Edition. 5. ed. United States of America: Addison Wesley, 2017. 652 p. ISBN 9788535217148. OLIVEIRA, Cláudio Luís Vieira; ZANETTI, Humberto Augusto Piovesana. PHP: programe de forma rápida e prática. São Paulo: Expressa, 2021. 1 recurso online. ISBN 9786558110224. PHP MANUAL. Manual de referência do PHP. PHP.net, 2025. Disponível em: https://www.php.net/manual/pt_BR/. Acesso em: 14 mar. 2025. ALURA. PHP: uma introdução à linguagem. Alura, 2021. Disponível em: https://www.alura.com.br/artigos/php- uma-introducao-linguagem. Acesso em: 14 mar. 2025. HOSTNET. A história da linguagem de programação PHP e sua evolução. Hostnet, 2021. Disponível em: https://www.hostnet.com.br/blog/a-historia-da-linguagem-de-programacao-php-e-sua-evolucao/. Acesso em: 14 mar. 2025. JESSILYNEH. Zend Engine: entendendo o motor que impulsiona o PHP. SpeakerDeck, 2021. Disponível em: https://speakerdeck.com/jessilyneh/zend-engine-entendendo-o-motor-que-impulsiona-o-php. Acesso em: 14 mar. 2025.