Giter Site home page Giter Site logo

crud-php-pdo's Introduction

PHP CRUD usando PDO

N|Solid

Um exemplo básico muito básico mesmo da utilização de PHP com PDO. São arquivos .php e mais com script .sql (para criação da tabela usada nos exemplos).

O conteúdo foi feito com base no artigo do devmedia

As rotinas são as seguintes:

As rotinas são objetivas e podem servidor de base para outros projetos.

connection

Visando não precisar ficar copiando e colando reaproveitar o código que vai ser repetido em vários locais, criei o arquivo de conexão e vou usa-lo em todos as ações do CRUD.

$username = 'root';
$password = '1234';

try {
    
    $conn = new PDO('mysql:host=localhost;dbname=exercicio', $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

} catch (PDOException $e) {
    echo 'ERROR: ' . $e->getMessage();
}

table

Abaixo segue script para criação da tabela usada no exemplo.

DROP TABLE IF EXISTS `exercicio`.`pessoa`;
CREATE TABLE  `exercicio`.`pessoa` (
  `idpessoa` int(11) NOT NULL AUTO_INCREMENT,
  `nome` varchar(45) NOT NULL,
  `email` varchar(45) NOT NULL,
  PRIMARY KEY (`idpessoa`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;

create

Após feita a conexão, vamos a criação do registro.

include_once 'connection.php';

if (isset($conn)) {
    
    // $insert = $conn->prepare("INSERT INTO PESSOA (nome, email) VALUES (?, ?)");
    // $insert->bindParam(1, $nome);
    // $insert->bindParam(2, $email);
    
    $insert = $conn->prepare("INSERT INTO PESSOA (nome, email) VALUES (:nome, :email)");
    $insert->bindParam(':nome', $nome);
    $insert->bindParam(':email', $email);
    
    $nome = 'Nascimento';
    $email = '[email protected]';
    
    $insert->execute();
    
    $insert->closeCursor();
    
    $conn = null;
}

read

Fazendo a leitura do arquivo, e reforço que esta tudo zuado são dados de fictícios.

include_once 'connection.php';

if (isset($conn)) {
    
    $read = $conn->prepare('SELECT * FROM pessoa WHERE idpessoa < ?');
    
    $id = 10;
    
    $read->bindParam(1, $id, PDO::PARAM_INT);
    
    $read->execute();
    
    foreach ($read as $row) {
        print $row['idpessoa'] . "\t";
        print $row['nome'] . "\t";
        print $row['email'] . "<br/>";
    }
    
    $read->closeCursor();
    
    $conn = null;
} 

update

A atualização será feita no código abaixo, tentando ater a forma mais simples e objetiva.

include_once 'connection.php';

if (isset($conn)) {
    
    $update = $conn->prepare('UPDATE pessoa set nome = ?, email = ? where idpessoa = ?;');
    
    $update->bindParam(1, $nome, PDO::PARAM_STR);
    $update->bindParam(2, $email, PDO::PARAM_STR);
    $update->bindParam(3, $id, PDO::PARAM_INT);
    
    $id    = 10 ;
    $nome  = "Ana";
    $email = "[email protected]";
    
    $update->execute();
    
    $update->closeCursor();
    
    $conn = null;
}

delete

Abaixo a opção de eliminar registros. Mas ninguem usa isso porque qualquer um deve pensar em desativar ao invés de eliminar registros para manter histórico.

include_once 'connection.php';

if (isset($conn)) {
    
    $update = $conn->prepare('delete from pessoa where idpessoa = ?;');
    
    $update->bindParam(1, $id, PDO::PARAM_INT);
    
    $id = 10 ;
    
    $update->execute();
    
    $update->closeCursor();
    
    $conn = null;
}

crud-php-pdo's People

Contributors

edmilson-nascimento avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.