Archive for outubro de 2009

PDO: PHP Data Objects (Parte 1)

“O PHP Data Objects (PDO) é uma extensão que define uma interface leve e consistente para acessar bancos de dados em PHP. Você pode executar todas as funções de banco de dados usando somente a extensão PDO. O PDO fornece uma camada de abstração de dados de acesso, o que significa que, independentemente de qual banco de dados você está usando, você utiliza as mesmas funções para as ações no banco. O PDO é uma função nativa a partir do PHP5.” (Adaptação da introdução ao PDO do PHP.net)

E aí pessoal? Tudo bem? Utilizar o PDO não é mais “opcional” no PHP. Desde que comecei a programar em PHP (não tem muito tempo, foi em 2007) utilizei as funções mysql e pgsql por pouco tempo apenas para aprender, depois partí para o PDO e a utilizo até hoje. O Zend Framework utiliza o PDO e a partir do PHP6 não haverão outras funções separadas por banco (como ainda existe no PHP5 a mysql_connect, etc), será utilizado somente o PDO.

Mas porque usar O PDO? Porque ela é extremamente segura com relação a SQL Injections e faz tudo de forma simples e rápida. O que é complicado fica fácil com o PDO.

Então vamos lá, nesta primeira parte mostrarei como abrir uma conexão MySql e executar uma consulta simples e uma consulta com condições com o PDO.

Abrindo a conexão

  1. <?php
  2.  
  3. $objPdo = new PDO('mysql:host=localhost;dbname=nome_do_banco', 'username','password');
  4.  
  5. ?>

Executando uma consulta simples

  1. <?php
  2.  
  3. $sql = "SELECT * FROM produtos";
  4. $result = $objPdo->query($sql);
  5.  
  6. ?>

Executando uma consulta com várias condições

  1. <?php
  2.  
  3.  
  4. $sql = "SELECT * FROM produtos WHERE tipo = ?, marca = ?, cor = ?";
  5.  
  6. $arrWhere = ('notebook', 'xingling', 'preto');
  7. $query = $objPdo>query($sql)
  8. $result = $query->execute($arrWhere);
  9.  
  10. ?>

Simples, não? No próximo POST vamos ver as outras operações de banco… Até lá!

, ,

3 Comentários

Utilizando de forma simples o ajax do jQuery

O intuito desse post é mostrar como é fácil trabalhar com o AJAX do jQuery. O exemplo abaixo simula o submit de um formulário, utilizando o ajax de uma forma bem simples.

Arquivo view.php
  1. <html>
  2. <head>
  3. <title>Exemplo Submetendo um formulario com jQuery.ajax</title>
  4.  
  5. <script type="text/javascript" src="jquery-1.3.2.js"></script>
  6.  
  7. <script language="javascript" type="text/javascript">
  8.  
  9. $(document).ready(function(){
  10.  
  11.  $('#submit').click(function(){
  12.  
  13.   $.ajax({
  14.    url: 'control.php',
  15.       async: false,
  16.       type: 'POST',
  17.       data: $('#form').serialize(),
  18.       dataType: 'text',
  19.    });
  20.  
  21.  });
  22.    
  23. });
  24.  
  25. </script>
  26.  
  27. </head>
  28. <body>
  29.  
  30. <h2>Exemplo Submetendo um formulario com jQuery.ajax</h2>
  31. <h4><a href="http://www.ti.thiagocolares.com.br"><i>http://www.ti.thiagocolares.com.br</i></a></h4>
  32.  
  33. <form id="form">
  34. Nome: <input type="text" name="nome"/><br/>
  35. Email: <input type="text" name="email"/><br/>
  36. </form>
  37.  
  38. <button id="submit"/>Submeter</button>
  39.  
  40. </body>
  41. </html>

Dessa forma, os dados do formulário serializado chegarão no seu $_POST:

Arquivo control.php
  1. <?php
  2.  
  3. print_r('Dados submetidos com sucesso!');
  4. print_r($_POST);
  5.  
  6. ?>

“Ah, Thiago… Mas qual a diferença disso pra um submit tradicional?” Nenhuma. Mas você pode utilizá-lo a partir de qualquer evento JavaScript (blur, focus, etc…), inserir dados em banco, fazer consultas… Enfim, agora deixem a criatividade rolar :) Logo postarei um exemplo mais interessante utilizando o Zend Framework.

Documentação: http://docs.jquery.com/Ajax

Um abraço!

,

2 Comentários

Entendendo as expressões regulares

Bom dia!

Acabei de ler um post muito bom do Rafael Jaques (PHPit) sobre expressões regulares. Me ajudou bastante a “clarear” algumas idéias sobre o assunto e creio que pode ajudar vocês também.

Quer ler? Clique aqui.

Nenhum comentário.