Conectar no MySQL com PHP e mysqli_connect

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()

 

Exemplo 02: Abrindo uma conexão utilizando a função mysqli_connect()

 

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:

 

 

Parâmetros

host
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.

username
O usuário de acesso ao banco MySQL.

passwd
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).

dbname
Nome do banco de dados a ser usado ao executar consultas.

port
Especifica o número da porta para tentar se conectar ao servidor MySQL.

socket
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:

Enquanto que, no estilo procedural, podemos validar como mostrado abaixo:

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.

Autor(a):
Claudeci Goularte
Formado em Análise e Desenvolvimento de Sistemas pela Faculdade de Filosofia, Ciências e Letras Santa Marcelina, e pós-graduado em Arquitetura de Software, pelo Instituto de Gestão em Tecnologia da Informação, o IGTI. Sou desenvolvedor de sistemas desde 2006, com ampla experiência em PHP, MySQL, C#, SQLServer, CSS, HTML, JavaScrit, JQuery, C#, SqlServer, entre outras. Amante da profissão.

3 pensamentos sobre “Conectar no MySQL com PHP e mysqli_connect

  1. 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.

Deixe uma resposta

Seu endereço de e-mail não será publicado. Campos marcados são obrigatórios *