Quando usamos o PHP e o MySQL em conjunto, muito provavelmente em alguma situação nos iremos deparar com algum erro na query SQL, como por exemplo o nome de uma coluna mal escrita ou alguma funcionalidade SQL do MySQL mal escrita.

php_mysql_logo

Por defeito o PHP não nos diz exactamente qual é o problema/erro, apenas nos diz que a query que escrevemos não está totalmente correcta. Vamos uma query com um erro para vermos a resposta do PHP:

 

Este é um exemplo com o qual nos vamos deparar muitas vezes, mas neste caso temos o nome de uma coluna da base de dados mal escrita, obtendo o seguinte erro:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in test.php on line 7

Em muitos casos conseguimos facilmente detectar e corrigir os erros, mas caso contrário podemos usar a função mysql_error() de forma a obtermos mais alguma informação em relação ao erro. Esta função simplesmente retorna qualquer erro retornado pela última execução de uma função do MySQL. Esta função apenas deve ser usada para encontrar e resolver problemas, devendo remover-se assim que o problema esteja resolvido. Vejamos o exemplo anterior, mas neste exemplo usamos a função mysql_error() para obtermos mais alguma informação:

 

Desta forma obtemos a seguinte informação para o erro:

Unknown column ‘nomme’ in ‘field list’

Tentem gerar mais erros na query SQL para verem as mensagens retornadas pela função mysql_error(). Esta função ajuda muito na identificação de erros no SQL. O erro no exemplo anterior é muito fácil de detectar e corrigir, mas alguns podem passar despercebidos a quem não esteja ainda bem treinado nesta programação.

Artigo anterior do tutorial PHP:

Limitar resultados no MySQL com LIMIT

Artigo seguinte do tutorial PHP:

Cookies em PHP

Tiago Ramalho

Tiago Ramalho é um profissional de Informática interessado em Internet, Programação .NET e PHP e blogging. Nos tempos livres escreve nos interessespessoais.com sobre Jardim, Saúde, Sistemas, utilitários e outros temas relacionados com informática.

More Posts - Website - Twitter - Pinterest - Google Plus