180 likes | 517 Views
Utilizar o banco de dados PostgreSQL com PHP. Rotinas e exemplos. Prof. Luiz Henrique M. de Sousa. Página de conexão com o servidor: Conexao-servidor.php . <? $conexao=pg_connect("host=127.0.0.1 dbname=postgres user=postgres password=1234@senai port=5432"); if(!$conexao){
E N D
Utilizar o banco de dados PostgreSQL com PHP. Rotinas e exemplos. Prof. Luiz Henrique M. de Sousa.
Página de conexão com o servidor: Conexao-servidor.php <? $conexao=pg_connect("host=127.0.0.1 dbname=postgres user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } ?>
Página de conexão com o banco de dados: Conexao-banco.php <? $conexao=pg_connect("host=127.0.0.1 dbname=cursophp user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } ?>
Página criar banco de dados: criar-db.php <title>Criar banco de dados postgres</title> <? /* $conexao=pg_connect("host=127.0.0.1 dbname=postgres user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } */ include "conexao-servidor.php"; $banco=“inserir nome do banco de dados”; // criando a database (se não existir outra com o mesmo nome) pg_query ("CREATE DATABASE $banco") or die ("Could not create database ".pg_last_error()); pg_close($conexao); echo "Banco de dados criado: ".$banco; ?>
Página criar tabelas: criar-tabelas-fixa.php <title>Criar tabelas</title> <? $con_string = "host=127.0.0.1 port=5432 dbname=cursophp user=postgres password=1234@senai"; $bdcon4 = pg_connect ($con_string) or die ("Couldn't connect to the new database<br>".pg_last_error()); $query = "CREATE TABLE clientes ( codigo character varying(50) NOT NULL, nome character varying(50) NOT NULL, endereco character varying(50) NOT NULL )"; pg_query($query) or die ("Query Failed.<br>".pg_last_error()); $query = "CREATE TABLE fotos ( codigo character varying(50) NOT NULL, jpg character varying(50) NOT NULL) "; pg_query($query) or die ("Query Failed.<br>".pg_last_error()); pg_close($conexao); ?>
Página deletar tabelas: deletar-tabela.php <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <? $tabela=“clientes”; $conexao=pg_connect("host=127.0.0.1 dbname=cursophp user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } $excluir = pg_query($conexao,"DROP TABLE $tabela"); echo "Tabela apagada: ".$codigo; ?> </body> </html>
Modelo de formulário para envio de dados para outra página. <table width="200" border="1" align="center" cellpadding="0" cellspacing="0"> <tr> <td><form action="insert-postgres.php" method="post" name="form2" target="_self" id="form2"> <p align="center"><strong>Inserir registro. </strong></p> <table width="200" border="1" cellspacing="0" cellpadding="0"> <tr> <td>Código</td> <td><input name="codigo" type="text" id="codigo"></td> </tr> <tr> <td>Nome</td> <td><input name="nome" type="text" id="nome2"></td> </tr> <tr> <td>Endereço</td> <td><textarea name="endereco" id="textarea"></textarea></td> </tr> </table> <p> </p> <p align="center"> <input type="submit" name="Submit2" value="Enviar"> </p> </form></td> </tr> </table>
Página inserir registro: insert-postgres.php <? /* $conexao=pg_connect("host=127.0.0.1 dbname=cursophp user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } */ include "conexao-banco.php"; $codigo=$_POST["codigo"]; $nome=$_POST["nome"]; $endereco=$_POST["endereco"]; // o banco de de dados se chama teste $strconsulta=pg_query($conexao, "select * from clientes where codigo='$codigo'"); $numregs=pg_num_rows($strconsulta); echo "Já tem ".$numregs." registro(s) neste código"; if ($numregs==0)//Caso ainda não exista o login no cadastro { $strconsulta2=pg_query($conexao, "insert into clientes (codigo,nome,endereco) values('$codigo','$nome','$endereco') "); pg_close($conexao); ?>
<script> alert('Aluno cadastrado com sucesso!'); </script> <? } else { ?> <script> alert('Este aluno já está cadastrado!'); // window.open('menu.php'); // window.close(); </script> <? pg_close($conexao); exit; } ?>
Página consultar todos os registros: consultar.php <html> <head> <title>Consultar</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <? $database = "cursophp"; $db_conn = pg_connect("host=127.0.0.1 dbname=$database user=postgres password=1234@senai port=5432"); if (!$db_conn) { echo "Failed connecting to postgres database $database\n"; exit; } $qu = pg_query($db_conn, "SELECT * FROM clientes ORDER BY nome"); $row = 0; // postgres needs a row counter while ($data = pg_fetch_object($qu, $row)) { ?>
<table width="490" border="1" cellspacing="0" cellpadding="0"> <tr> <td width="68"><div align="center">Código</div></td> <td width="216"><div align="center">Nome</div></td> <td width="198"><div align="center">Endereço</div></td> </tr> <tr> <td><?echo $data->codigo;?></td> <td><?echo $data->nome;?></td> <td><?echo $data->endereco;?></td> </tr> </table> <p> </p> <p> <? $row++; } pg_free_result ($qu); pg_close ($db_conn); ?> </p> </body> </html>
Página consultar um registro: consultar-registro.php <html> <head> <title>Consultar</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <? $codigo=$_POST["codigo"]; // receber o código de outra página. $database = "cursophp"; $db_conn = pg_connect("host=127.0.0.1 dbname=$database user=postgres password=1234@senai port=5432"); if (!$db_conn) { echo "Failed connecting to postgres database $database\n"; exit; } $query = pg_query($db_conn, "SELECT * FROM clientes where codigo='$codigo'"); pg_query($query); while ($consulta = pg_fetch_array($query)){ ?>
<table width="490" border="1" cellspacing="0" cellpadding="0"> <tr> <td width="68"><div align="center">Código</div></td> <td width="216"><div align="center">Nome</div></td> <td width="198"><div align="center">Endereço</div></td> </tr> <tr> <td><?echo $consulta['codigo'];?></td> <td><?echo $consulta['nome']?></td> <td><?echo $consulta['endereco'];?></td> </tr> </table> <p> <? } pg_free_result ($qu); pg_close ($db_conn); ?> </p> </body> </html>
Página alterar um registro: alterar.php <? $conexao=pg_connect("host=127.0.0.1 dbname=cursophp user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } $codigo=$_POST["codigo"]; $nome=$_POST["nome"]; $endereco=$_POST["endereco"]; $strconsulta=pg_query($conexao, "select * from clientes where codigo='$codigo'"); $numregs=pg_num_rows($strconsulta); echo "Já tem ".$numregs." registro(s) neste código"; if ($numregs=!0)//Caso ainda não exista o login no cadastro { $strconsulta2=pg_query($conexao, "update clientes set nome='$nome',endereco='$endereco'"); pg_close($conexao); ?>
<script> alert('Código alterado com sucesso!'); </script> <? } else { ?> <script> alert('Este código não está cadastrado!'); // window.open('menu.php'); // window.close(); </script> <? pg_close($conexao); exit; } ?>
Página apagar um registro: deletar.php <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <? $codigo=$_POST["codigo"]; // recebe o número de registro de outra página. $conexao=pg_connect("host=127.0.0.1 dbname=cursophp user=postgres password=1234@senai port=5432"); if(!$conexao){ echo"Falha na conexão com o banco. Veja detalhes técnicos:".pg_last_error($conexao); } $excluir = pg_query($conexao,"DELETE FROM clientes WHERE codigo =$codigo"); echo "Codigo apagado: ".$codigo; ?> </body> </html>
Fim. • Curso PHP com banco de dados PostgreSQL. • Prof. Luiz Henrique Moura de Sousa. • Boa sorte!