php aula07 - conexão com banco de dados

Post on 18-Feb-2017

435 Views

Category:

Software

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Programação Dinâmica para Web

Prof. Daniel Brandão

Efetuando conexões e consultas em

SGBDs a partir de Aplicações Web

Conexões e consultas em SGBDs

• Linguagens de programação fornecem uma série de funções ou métodos que possibilitam a conexão de aplicações com SGBDs;

• Toda aplicação, seja ela Web ou Desktop, segue uma sequência de passos na interação aplicação-SGBD;

Conexões e consultas em SGBDs

• Sequência de passos:

1. A aplicação estabelece uma conexão com o SGBD;

2. A aplicação seleciona uma base de dados a ser utilizada durante a conexão;

3. A aplicação executa uma consulta específica (seleção, inserção, remoção...);

4. A aplicação fecha a conexão corrente com o SGBD;

1ª ETAPA – Estabelecer uma conexão PHP-MySQL

1ª Etapa

• A função mysql_connect() é utilizada na abertura de uma conexão MySQL;

6

<?php

$conexao = mysqli_connect("servidor", "login",

"senha");

/*

Onde:

“servidor” – URL do servidor MySQL

“login” – Login de acesso ao servidor MySQL

“senha” – Senha de acesso ao servidor MySQL

*/

?>

1ª Etapa

• Exemplo:

7

<?php

$conexao = mysqli_connect("localhost", "root", "");

if($conexao)

echo "Conexão estabelecida com sucesso!";

else

echo "Erro ao estabelecer conexão.";

?>

2ª ETAPA – Selecionar uma base de dados do servidor

MySQL

2ª Etapa

• A função mysql_select_db() é utilizada na seleção de uma base de dados MySQL;

9

<?php

$conexao = mysqli_connect("servidor", "login",

"senha");

mysqli_select_db("nome_da_base", $conexao);

/*

Onde:

“nome_da_base” – Nome da base de dados

$conexao – Ponteiro para o servidor MySQL

*/

?>

3ª ETAPA – Executar uma consulta SQL

3ª Etapa

• A função mysql_query() é utilizada na execução de consultas SQL em um servidor MySQL;

11

<?php$conexao = mysqli_connect("servidor", "login",

"senha");

mysqli_select_db("nome_da_base", $conexao);

mysql_query(“Query SQL”);

?>

3ª Etapa

• Exemplo 1:

12

<?php$conexao = mysqli_connect(“localhost", “root", "");

mysqli_select_db(“cadastro", $conexao);

mysqli_query(“

CREATE TABLE pessoas

(

id int,

nome varchar(255)

)

");

?>

3ª Etapa

• Exemplo 2:

13

<?php$conexao = mysqli_connect(“localhost", “root", "");

mysqli_select_db(“cadastro", $conexao);

mysqli_query(“

INSERT INTO pessoas

(nome)

VALUES

(‘Jose’)

");

?>

3ª Etapa

• Exemplo 3:

14

<?php$conexao = mysqli_connect(“localhost", “root", "");

mysqli_select_db(“cadastro", $conexao);

$dados = mysqli_query("SELECT * FROM PESSOAS");

while($tabela = mysqli_fetch_array($dados)) {

echo $tabela[‘nome’] . ‘<br/>’;

}

?>

4ª ETAPA – Encerrar uma conexão

4ª Etapa

• A função mysql_close() encerra uma conexão MySQL;

16

<?php$conexao = mysqli_connect("servidor", "login",

"senha");

mysqli_select_db("nome_da_base", $conexao);

mysqli_query(“Query SQL”);

mysqli_close($conexao);

?>

4ª Etapa

• Exemplo:

17

<?php$conexao = mysqli_connect(“localhost", “root", "");

mysqli_select_db(“cadastro", $conexao);

mysqli_query(“

CREATE TABLE pessoas

(

id int,

nome varchar(255)

)

");

mysqli_close($conexao);

?>

5ª ETAPA – Inserindo e Recebendo dados do Banco

5ª etapa

• Para inserir dados em uma tabela no banco, você precisa criar um script HTML, um formpor ex., que envie dados para um arquivo PHP que possua um SQL INSERT a ser executado no servidor.

19

5ª Etapa

• Exemplo:

20

<?php$conexao = mysqli_connect(“localhost", “root", "");

$titulo = $_POST['titulo'];

$subtitulo = $_POST['subtitulo'];

$texto = $_POST['texto'];

$sql = "INSERT INTO admin VALUES ('', '$titulo',

'$subtitulo', '$texto')";

$insert = mysqli_query($conexao, $sql);

mysqli_close($conexao);

?>

$insert = mysqli_query($conexao, $sql);

5ª etapa

• Para listar dados que estejam em uma tabela no banco, você precisa criar um script em um arquivo PHP que possua um SQL SELECT a ser executado no servidor.

21

5ª Etapa

• Exemplo:

22

<? $conexao = mysqli_connect(“localhost", “root", "");

$dados = mysqli_query(“SELECT * FROM admin");

while($tabela = mysqli_fetch_array($dados)) {

echo $tabela[‘titulo’] . ‘<br/>’;

echo $tabela[‘subtitulo’] . ‘<br/>’;

echo $tabela[‘texto’] . ‘<br/>’;

}

mysqli_close($conexao);

?>

Atividade

Mini Projeto PHP

23

Atividade

• Baseado no exemplo feito em sala, crie um projeto de site em PHP contendo:

A) Página inicial recebendo dados do banco;

B) Página Admin com as opções de inserir dados no banco e listar;

C) Arquivo config.inc.php contendo os dados de conexão. Este aquirvo deve ser incluído (include) e todas as páginas que precisarão de conectar com o banco.

• OBS: exemplo no meu github (clique aqui)

24

top related