Aulas PHP - aula 3.1 - Trabalhando com Banco de Dados MySQL. Criação de tabelas.
Na aula anterior criamos conexões com o banco de dados. Nesta aula vamos criar tabelas para nosso futuro site. Para começar, vamos adicionar o nome do banco de dados necessário à classe simpleCMS:
class simpleCMS { // classe de gerenciamento
public $host = 'localhost'; //variáveis para trabalhar com BD
public $username = 'root';
public $password = '';
public $db = 'testDB';
Agora precisamos criar esse BD em nosso servidor MySQL. Se você também usar Denver, há phpMyAdmin para isso, que é incluído no Denver. Acesse phpMyAdmin através deste link e crie um novo BD:

Agora que definimos as configurações e criamos um novo BD. Vamos corrigir a conexão com o servidor MySQL através do PHP. Vamos mudar o método de conexão com o BD:
public function connectDB() {
$link = mysql_connect($this->host, $this->username, $this->password); // conectando ao servidor MySQL
if (!$link) {
die('Erro de conexão: ' . mysql_error());
}
mysql_select_db($this->db) or die("Não consigo encontrar o BD. " . mysql_error()); //conectando ao BD
return $link;
}
Se tudo estiver bem, nenhuma mensagem deve ser exibida. Agora vamos criar uma tabela. Para fazer isso, vamos adicionar o método buildDB(), que chamaremos diretamente na classe dentro do método connectDB().
public function connectDB() {
$link = mysql_connect($this->host, $this->username, $this->password); // conectando ao servidor MySQL
if (!$link) {
die('Erro de conexão: ' . mysql_error());
}
mysql_select_db($this->db) or die("Não consigo encontrar o BD. " . mysql_error()); //conectando ao BD
$this->buildDB(); // assim chamamos um método dentro de outro método da mesma classe
return $link;
}
public function buildDB(){
}
Agora a cada conexão no método buildDB() podemos verificar se todas as nossas tabelas estão no lugar. Para fazer isso, enviaremos uma consulta ao BD:
public function buildDB(){
$sql = 'CREATE TABLE IF NOT EXISTS messages (
title VARCHAR(150),
bodytext TEXT,
created VARCHAR(100)
)';
return mysql_query($sql);
}
Agora vamos entender como funciona.
Primeiro escrevemos a consulta SQL em uma variável de string e depois inserimos essa variável de string na função mysql_query, que envia a consulta para o BD.
Nossa consulta sql começa com o operador CREATE TABLE - criando uma tabela. A seguir, verificamos se esta tabela já existe ou não, ou seja, a tabela messages.
Entre parênteses após o nome da tabela estão os campos dessa tabela que serão criados junto com a tabela. Para nós, estes são os campos title, bodytext, created. Após o nome de cada campo vem a descrição do tipo de dados neste campo. VARCHAR(150) - esta é uma string de no máximo 150 caracteres, TEXT - este é um campo de texto que permite armazenar artigos inteiros.
Agora, se você salvar o arquivo simpleCMS.php e executar index.php, você criará a tabela messages.
Usaremos esta tabela na próxima aula. Se você tiver dúvidas ou erros, deixe-os nos comentários.