Você está na página 1de 6

Duas Maneiras de Conectar um Script PHP

com MySQL
Existem duas maneiras de se conectar com um banco de dados MySQL usando o
PHP: MySQLi ePDO.
MySQLi significa MySQL Improved. Trata-se de uma extensão exclusiva para o
MySQL que adiciona novos recursos para uma interface dedatabase MySQL. O
MySQLi é tanto processual quanto orientada por objeto – este último atributo foi
herdado da versão mais antiga do MySQL.
O MySQL original divide uma tarefa em procedimentos lineares passo a passo, o que
faz com que seja difícil de modificá-la. Afinal, você precisa editar o código desde o
começo.
Enquanto isso, o MySQLi vê os dados como um conjunto de objetos intercambiáveis
com funções, permitindo que os usuários adicionem ou removam dados com
facilidade.

PDO significa PHP Data Object. Diferentemente do MySQLi, o PDO é apenas


orientado para objetos e suporta uma variedade de tipos de bancos de dados
diferentes que usam PHP, como MySQL, MSSQL, Informix e PostgreSQL.
Um dos recursos mais importantes que ambos suportam é o de prepared statements,
que acelera o tempo necessário para o MySQL executar a mesma solicitação
múltiplas vezes. Ele também é usado para evitar ataques de injeção SQL na hora de
promover mudanças para o banco de dados.

Como Usar o MySQLi para Conectar um


Script PHP para o MySQL
Siga estes passos para usar o MySQLi para um script PHP ao MySQL:
1. Vá até Projecto no vs code.

2. Crie um Novo Arquivo ao clicar no ícone a partir do menu superior.

3. Salve-o como databaseconnect.php. Você pode trocar para o nome que


desejar, só mantenha a extensão php.

4. Clique duas vezes para abrir o arquivo e então copie e cole as seguintes linhas
de código nele. Mude os primeiros quatro valores embaixo de <?php com as
credenciais que você anotou mais cedo.
<?php
$servername = "localhost";
$database = "databasename";
$username = "username";
$password = "password";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $database);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
mysqli_close($conn);
?>
5. mysql_query(); executa um comando SQL no banco de dados.

6. mysql_fetch_array(); retorna linha de consulta até que a condição


seja falsa.

7. mysql_free_result(); libera memória utilizada.

8. mysql_close(); fecha conexão com o servidor.

Explicações para o Código MySQLi


O principal método usado neste script é omysqli_connect(). Essa é uma função PHP
interna para estabelecer uma nova conexão com um servidor MySQL.
No começo do nosso código, vamos ver algumas declarações variáveis e valores
atribuídos a essas variáveis. Normalmente, precisamos de quatro deles para
estabelecer uma conexão de banco de dados apropriada: $servername, $database,
$username, e $password.
No código, vamos definir os detalhes do nosso banco de dados como os valores para
aquelas variáveis, para que eles possam ser passados para a função.
Se a conexão não foi bem-sucedida, então a função die() é executada. Isso
basicamente mata o nosso script e nos apresenta o erro de mensagem de conexão
que definimos. Por padrão, o erro de conexão MySQL vai dizer Conexão
falhou seguido de uma mensagem de erro exata descrevendo o problema.
Por outro lado, se a conexão MySQL foi bem-sucedida, o código vai
imprimir Conectado com sucesso ao invés disso.
A última parte do código é mysqli_close, que simplesmente vai fechar a conexão com
o banco de dados de modo manual. Se isso não for especificado, as conexões MySQL
vão fechar por conta própria quando o script for encerrado.

2-Forma para conectar ao Banco de Dados.


o Existem funções no PHP específicas para conexão ao servidor e ao banco.
o mysql_connect(); função para conexão ao servidor

o mysql_select_db(); função para selecionar o banco de dados

o <?php

o $conecta = mysql_connect('HOST', 'LOGIN', 'SENHA') or print


(mysql_error());

o print "Conexão OK!";

o mysql_close($conecta);

o ?>

o Usaremos uma função de loop ( while(); )para demonstrar uma consulta SQL em
ação.
Observação!
É possível utilizar o script abaixo para interação com tabela e colunas criadas em nosso exemplo de
MySQL.
<?php

$conecta = mysql_connect('HOST', 'LOGIN', 'SENHA') or print


(mysql_error());

mysql_select_db('BANCO', $conecta) or print(mysql_error());

$sql = "SELECT coluna1, coluna2 FROM tabela";

$result = mysql_query($sql, $conecta);

/* Escreve resultados até que não haja mais linhas na tabela */

while($consulta = mysql_fetch_array($result)) {

print "Coluna1: $consulta[coluna1] - Coluna2: $consulta[coluna2]<br>";

mysql_free_result($result);

mysql_close($conecta);

?>
Exemplo 1 em acção.

<?PHP

$user_name = "root";

$password = "";

$database = "database123";

$host_name = "localhost";

$connect_db=mysql_connect($host_name, $user_name, $password);

$find_db=mysql_select_db($database);

if ($find_db) {

$query = "SELECT * FROM employee”;

$result = mysql_query($query);

while ( $field_db = mysql_fetch_assoc($result) ) {

echo$field_db['emp_ID'] . "<BR>";

echo $field_db['emp_FirstName'] . "<BR>";

echo $field_db['emp_lastname'] . "<BR>";

echo $field_db['emp_Address'] . "<BR>";

mysql_close($connect_db);

else {

echo "Database does not exist";

mysql_close($connect_db);

?>

Exemplo 2 em acção
Segue agora, o código completo do nosso exemplo. Juntamos cada
uma das etapas em um PHP único. Caso prefira, você pode copiar e
colar em seu site, e realizar as adaptações necessárias.

<?php

# Substitua abaixo os dados, de acordo com o banco


criado
$user = "usuario_do_banco";
$password = "senha_do_banco";
$database = "nome_do_banco";

# O hostname deve ser sempre localhost


$hostname = "localhost";

# Conecta com o servidor de banco de dados


mysql_connect( $hostname, $user, $password ) or die(
' Erro na conexão ' );

# Seleciona o banco de dados


mysql_select_db( $database ) or die( 'Erro na
seleção do banco' );

# Executa a query desejada


$query = "SELECT codigo,nome,endereco FROM tabela";
$result_query = mysql_query( $query ) or die(' Erro
na query:' . $query . ' ' . mysql_error() );

# Exibe os registros na tela


while ($row = mysql_fetch_array( $result_query ))
{ print $row[codigo] . " -- " . $row[nome] . " --
" . $row[endereco]; }

?>

Como Conferir a Conectividade e Resolver


Erros Comuns
Para checar se a conexão foi bem-sucedida, acesso o seu domínio da seguinte
maneira:seudominio/databaseconnect.php. Se o nome do seu arquivo PHP for
diferente, não se esqueça de mudá-lo de acordo com a sua escolha.
Você verá “Conected successfully” (Conectado com sucesso) ou variantes dessa
mensagem se tudo estiver rodando sem outro problema.
Agora, se a conexão não for bem-sucedida, você verá algo diferente. As mensagens
de erro são levemente distintas para o MySQLi e o PDO.

Erro de Senha Incorreta


Este erro acontece se nós mudamos a senha ou outra credencial no código PHP (mas
não mudamos na base de dados em si).
Caso você veja uma mensagem de “Access Denied” (Acesso Negado) ou “Could
not connect to database” (Não foi possível se conectar à base de dados)
acompanhada de “(using password:YES)“ – algo como “(usando senha: SIM)” – no
final, a primeira coisa a se fazer é conferir os detalhes da base de dados. Pode haver
um typoou uma parte pode estar faltando.

Você também pode gostar