Neste artigo veremos por que não utilizar funções mysql no PHP, como a função query por exemplo, que era amplamente utilizada antigamente.

porque nao utilizar funcoes mysql no php capa

Fala programador(a), beleza? Bora aprender mais sobre PHP!

As funções mysql_* não são propriamente do PHP, e sim da extensão mysql

E o qual o problema?

O problema é que a extensão mysql foi descontinuada, ou seja, não desenvolvem melhorias ou arrumam os problemas dela

Por isso é fortemente recomendável que não se utilize mais estas funções, além disso eventualmente podem parar de funcionar com a evolução da linguagem

A extensão pode ser removida em algum momento, fazendo com que sua aplicação não reconheça mais estes métodos do mysql

Você pode então optar por duas alternativas:

  • mysqli;
  • PDO (recomendo);

Além disso as funções de mysql não dão suporte a: consultas assíncronas, consultas parametrizadas, stored procedures e transactions

E aí que vem o problema, a falta de consultas parametrizadas é o que torna a biblioteca insegura

Pois se você não tomar os devidos cuidados estará exposto a um SQL Injection, que é uma invasão ao banco de dados

Então o mais certo é partir para as alternativas com mais recursos e seguras

Sobre a PDO

A PDO é construída com orientação a objetos, um paradigma de programação, que vai deixar sua utilização ainda mais fácil

Veja um exemplo de conexão com PDO:

<?php

    $servername = "localhost";
    $username = "teste";
    $password = "xxx";

    try {
      $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);

      echo "Conectou"; 
    } catch(PDOException $e) {
      echo "Erro: " . $e->getMessage();
    }

?>

Além disso a PDO funciona com 12 drivers diferentes, como: MySQL, MS SQL Server, Oracle, POstgreSQL, SQLite e etc

Eu costumo utiliza o PDO pela versatilidade e a possibilidade fácil da orientação a objetos

Porém se você precisa de performance, o melhor seria utilizar mysqli

Conclusão

Neste artigo vimos por que não utilizar funções mysql no PHP

Isso se dá a possibilidade de deixar a aplicação não segura, quanto os tratamentos de dados são feitos de forma errada

Além disso vimos alternativas para o mysql como mysqli e PDO

Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube

Subscribe
Notify of
guest

0 Comentários
Inline Feedbacks
View all comments