A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Informática Numaboa

PHP + MySQL

Sex

1

Dez

2006


21:25

(33 votos, média 4.24 de 5) 


Nível Intermediário

O movimento do software de código aberto doou o Linux para o mundo da computação. Só isto já seria o suficiente, mas a coisa não pára por aí. O mesmo movimento nos trouxe, entre outros, o PHP, o MySQL e o PostgreSQL. Pelo andar da carruagem, a dupla dinâmica PHP + MySQL já fez história como a melhor combinação para se criar sites dinâmicos. Tanto é verdade que a grande maioria dos serviços de hospedagem oferecem o famoso LAMP - Linux, Apache, MySQL e PHP - para você criar seus sites. É claro que existem outras opções para os escravos da Micro$oft, mas este é um outro assunto smile

Há muito tempo atrás escrevi um tutorial que chamei de PHP rapidinho. Ao encerrar o dito cujo, pedi que o pessoal se manifestasse se quisesse um tutorial mais parrudo, o PHP maiorzão. Os pedidos foram muitos, principalmente solicitações de PHP com banco de dados. Foi devido à insistência que resolvi escrever este tutorial. Ainda não é o maiorzão, mas acho que quebra um galho para o pessoal de nível intermediário.

Preparando o terreno

Se você optou por um serviço de hospedagem que oferece tanto o PHP quanto o MySQL, tá tudo em riba. Se você possui um servidor próprio e está com tudo na mão, melhor ainda! Com o PHP instalado e à disposição, é só criar os scripts. Com o MySQL instalado, criar uma base de dados são dois palitos.

atencao Este tutorial não cobre os tópicos de instalação e configuração do PHP e do MySQL. Também não entra em detalhes de como criar uma base de dados no MySQL.

Vou usar como exemplo uma base de dados para mostrar as figurinhas que já tenho no meu álbum de jogadores de futebol (a bem da verdade, surrupiei esta idéia do meu neto João, curtidor das ditas figurinhas :blush: ). Mas vamos lá. Se você puder usar um gerenciador de banco de dados como o PHPMyAdmin ou tiver acesso direto ao servidor faça o seguinte:

  1. Crie uma base de dados chamada albuns.
  2. Crie uma tabela chamada craques.
  3. Crie os seguintes campos na tabela craques:
    nome VARCHAR(20) NOT NULL
    clube VARCHAR(20) NOT NULL
    numero TINYINT(4) NOT NULL
    disp TINYINT(4)
  4. Adicione alguns dados só para poder testar seus scripts. Por exemplo, INSERT INTO craques VALUES('Pelé', 'Brasil', 1, 3)

Você também pode usar o PHP para criar sua base de dados e as tabelas. Sugiro que você use este método para ir pegando o jeito da coisa.

Conexão com o banco de dados

Para testar se você consegue se conectar com o seu banco de dados, crie o seguinte script (sem os números de linha) substituindo o nome do usuário e a senha:

'; mysql_close($conexao); echo 'Conexão fechada'; ?>

Vou chamar este arquivo de teste.php. Faça o upload do teste.php para um local que seu navegador possa acessar e execute-o indicando o endereço correspondente. Se você o colocou no diretório raiz, o endereço deve ser http://www.seusite.com.br/teste.php.

Se a conexão não puder ser efetuada, você vai ver na tela apenas a mensagem Erro de conexão com o MySQL; caso contrário, vai aparecer Sucesso na conexão e, como apenas nos conectamos e logo em seguida nos desconectamos, a mensagem Conexão fechada aparece depois da primeira.

Aqui foram usadas as funções mysql_connect e mysql_close do PHP.

Criando uma base de dados

Se o teste acima mostrou que foi possível fazer a conexão com seu banco de dados, tente criar uma nova base de dados. Insira no script anterior as linhas 10 a 13:

'; $query = "CREATE DATABASE IF NOT EXISTS albuns"; $base = mysql_query( $query ); if( $base ) echo 'Base de dados criada< br>'; else echo 'Não foi possível criar a base de dados albuns< br>'; mysql_close( $conexao ); echo 'Conexão fechada'; ?>

Se o resultado foi Sucesso na conexão / Base de dados criada / Conexão fechada, então tudo está andando como o previsto. Se a mensagem Não foi possível criar a base de dados albuns aparecer, então o usuário indicado tem somente o privilégio de se conectar ao banco de dados, mas não o de criar novas bases de dados, ou existe um erro no seu script.

Aqui foi usada mais uma função do PHP que é, sem dúvida nenhuma, a mais usada para "conversar" com o MySQL: a mysql_query. Os parâmetros que enviamos através desta função são da linguagem MySQL. Aqui usamos CREATE DATABASE IF NOT EXISTS albuns. Poderíamos ter usado apenas CREATE DATABASE albuns que o resultado seria o mesmo, mas, como vamos rodar o script uma porção de vezes, não tem porque ficar criando a mesma base de dados repetidamente.

Mais um detalhe: não usamos die( 'Não foi possível criar a base de dados albuns' ) porque, caso a base de dados não for criada, o script será interrompido e a conexão fica aberta. Cuidado para não esquecer conexões abertas nos seus scripts!

Informações adicionais