Conectar no MySQL com PHP e mysqli_connect | Código Master
12.jan.2016 Claudeci Goularte Comentário(s)
Após um período breve de recesso, pelas festividades de fim de ano, voltamos hoje com uma novo tuto para a comunidade.
Já falamos anteriormente, no post Conectar ao MySQL com PHP, como procede para realizar uma conexão com o MySQL, utilizando a função mysql_connect(), porém, como citado nos comentários pelo amigo André Luiz (que aliás, agradecemos mais uma vez ao comentário), as funções do mysql_*(), já estão depreciadas, sendo altamente recomendado o uso das funções mysqli_*().
Hoje veremos como conectar no MySQL, usando o PHP e mysqli_connect().
A extensão mysqli permite a você acessar a funcionalidade provida pelo MySQL 4.1 e posterior.
Fonte: http://ca2.php.net/manual/pt_BR/intro.mysqli.php
Existem algumas diferenças entre as duas bibliotecas. Podemos destacar tais como a extensão MySQLi, por exemplo, suporta apoios charsets, instruções preparadas, enquanto que a MySQL não possui. Outro exemplo seria que o MySQL não suporta várias instruções, já a extensão MySQLi possui. Na documentação da biblioteca podemos encontrar várias mudanças que são significativas, acessando o link da documentação aqui.
Como citado, a MySQLi possui instruções preparadas, o que seria isso?
A declaração preparada ou uma declaração parametrizada é usado para executar a mesma instrução várias vezes com alta eficiência.
Fonte: http://php.net/manual/pt_BR/mysqli.quickstart.prepared-statements.php
Com isso, para que uma instrução seja executada no banco de dados, ela primeiro é enviada ao servidor, que faz uma análise de sintaxe da instrução, e somente após este procedimento, ela será efetivamente executada. Isso é muito útil, pois, não necessitamos nos preocupar com caracteres especiais, visto que o próprio servidor do MySQL fará o trabalho duro do tratamento dos caracteres, preparando-os para execução na base de dados.
Mas, chega e "lero lero", e vamos aos exemplos.
A conexão com o banco de dados, utilizando a biblioteca MySQLi, pode ser utilizada de duas formas: A primeira, seria informando os dados para conexão diretamente na declaração do novo objeto MySQLi, ou seja, no estilo orientado a objeto, e a segunda, utilizando a função mysqli_connect(), no estilo procedural. Veja a seguir.
Exmeplo 01: Abrindo a conexão na declaração do objeto mysqli()
<?php $obj_mysqli = new mysqli("127.0.0.1", "usuario", "senha", "nomebanco"); ?>
$obj_mysqli = new mysqli("127.0.0.1", "usuario", "senha", "nomebanco");
Exemplo 02: Abrindo uma conexão utilizando a função mysqli_connect()
<?php $link_conexao = mysqli_connect("127.0.0.1", "usuario", "senha", "nomebanco"); ?>
$link_conexao = mysqli_connect("127.0.0.1", "usuario", "senha", "nomebanco");
Observe que a diferença básica nos exemplos, seria que no no Exemplo 01, criamos um objeto do tipo MySQLi, enquanto no Exemplo 02, criamos apenas um link de conexão que será utilizado em demais funções.
Para ambos os exemplos, temos como parâmetros, o seguintes casos abaixo:
Pode ser um nome de host ou um endereço IP.
Passando o valor NULL ou a string "localhost" para este parâmetro, o host local é assumido.
Quando possível, os tubos serão utilizados em vez do protocolo TCP / IP.
O usuário de acesso ao banco MySQL.
Se não for fornecida a senha, ou for informada NULL, o servidor MySQL tentará autenticar o usuário contra esses registros de usuários que têm apenas nenhuma senha. Isso permite que um nome de usuário para ser usado com diferentes permissões (dependendo se uma senha, como previsto ou não).
Nome do banco de dados a ser usado ao executar consultas.
Especifica o número da porta para tentar se conectar ao servidor MySQL.
Especifica o socket ou named pipe que deve ser usado.
Fonte: http://php.net/manual/pt_BR/mysqli.construct.php
Ao criar uma conexão, utilizando o estilo orientado a objeto, podemos validar a conexão como mostrado a seguir:
<?php if ($obj_mysqli->connect_errno) { echo "Ocorreu um erro na conexão com o banco de dados."; } ?>
Enquanto que, no estilo procedural, podemos validar como mostrado abaixo:
<?php if (!$link_conexao) { die("Ocorreu um erro na conexão com o banco de dados."); } ?>
if (!$link_conexao) {
die("Ocorreu um erro na conexão com o banco de dados.");
Os exemplos são bem simples e praticos. Você pode obter mais informações nos links deixados durante a postagem.
Bom, por hoje é isso. Espero ter ajudado mais um pouco. Um grande abraço, até o próximo post.
Dúvidas, sugestões, reclamações e claro, elogios, são muito bem vindos. Utilize o espaço para comentários no final da página.
Conectar ao MySQL com PHP
Banco de dados Desenvolvimento MySQL PHP
MySQL MySQLi mysqli_connect PHP
3 pensamentos sobre "Conectar no MySQL com PHP e mysqli_connect"
Pingback: CRUD com PHP, de forma simples e fácil | Código Master
11.jun.2016 às 11h53
tenho uma duvida que tem me trazido diversas incompatibilidades. Com a evolucao do PHP e Mysql, surgiram versoes mais recentes, desta forma o Mysqli. Eis ai que reside meu problema, gostaria de saber qual e meio correto de conectar.