+1

PHP Data Objects (PDO)

criado por Aderbal Nunes em 29/07/2007 4:36pm
Utilização mais avançada

Depois de conectar o banco de dados escolhido, no meu caso o MySQL, vamos agora brincar com o nosso banco aberto. Lembre sempre de fechar o banco.

Código:
<?php
try{
    // conecto a base de dados
    $pdo =  new PDO("mysql:host=localhost;dbname=teste", "root", "xxxxx");
    // a partir daqui já tenho um objeto PDO
    
    // preparo uma query a ser executada
    $stmt = $pdo->prepare("SELECT * FROM agenda");
    // executo a query
    $stmt->execute();
    // a partir daqui eu tenho um array com todo o resultado de minha query
    // vamos agora varrer esse array
    
    // lembra do mysql_fetch_array?
    while ($rs = $stmt->fetch(PDO::FETCH_OBJ)) {
        // aqui eu mostro os valores de minha tabela
        // veja que no objeto $rs estou usando o nome real do campo da tabela
        echo "Nome: " . $rs->nome . " - Email: " . $res->email . "<BR>";
    }    
    // fecho o banco
    $pdo = null;

} catch(PDOException $e) {
    // tratamento da exeção
    echo $e->getMessage();
}
?>

Output:
Nome: João Maria – Email: joaomaria@gmail.com
Nome: Chico José – Email: chicojose@hotmail.com
Nome: Maria Delfina – Email: mariadelfina@yahoo.com

Pronto com isso temos uma manipulação de banco de dados genérica simples e segura.

Finalizando

Espero ter ajudado, na próxima edição estarei mostrando uma classe fábrica de conexões utilizando o PDO e uma classe DAO (Data Access Object) que fará acesso a essa classe e você terá um script 100% OO no PHP.

Até a próxima =)

Comentários:

Mostrando 1 - 3 de 3 comentários
Parabéns pela postagem, me ajudou e muito nos estudos.
03/07/2015 8:22pm (~9 anos atrás)

srsilveira disse:
opa, bom artigo.
Só um erro, na linha que diz:
echo "Nome: " . $rs->nome . " - Email: " . $res->email . "<BR>";

não tem $res->, deveria ser $rs->
13/11/2007 4:39am (~17 anos atrás)

Muito bom cara!
01/08/2007 6:47am (~17 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)