Você está na página 1de 3

Conectar PHP con PostgreSQL

PHP es un lenguaje de scripting de propsito general y de cdigo abierto que est especialmente
pensado para el desarrollo web; Por otro lado este lenguaje nos permite conectarnos con distintos
motores de base de datos, tales como: MySQL, PostgreSQL, SQL Server, Oracle, DB2, etc.
PostgreSQL es un sistema de gestin de bases de datos relacionales, distribuido bajo licencia BSD
(Berkeley Software Distribution) y con su cdigo fuente disponible libremente. Es el sistema de gestin
de bases de datos de cdigo abierto ms potente del mercado.
Es por ello que en este tutorial les enseare como conectar php con postgresql por las distintas
ventajas que esta tiene, para ello utilizaremos AppServer (Ver Como Instalar AppServer), tal como se
muestra a continuacin:
Herramienta Software:
- PostgreSQL 9.1

Descargar

1 En primer lugar descargar e instalar PostgreSQL, luego crearemos un usuario, una base de datos, tal
como se muestra a continuacin:
Creacin de Usuario:
postgres=# create user spark with password '123456';
CREATE ROLE
Creacin de la Base de Datos:
postgres=# create database php_postgresql owner spark;
CREATE DATABASE
Conexin a la Base de Datos php_postgresql:
postgres=# \c php_postgresql spark localhost 5432;
Contrasea para usuario spark:
ADVERTENCIA: El cdigo de pgina de la consola (850) difiere del cdigo
de pgina de Windows (1252).
Los caracteres de 8 bits pueden funcionar incorrectamente.
Vea la pgina de referencia de psql Notes for Windows users
para obtener ms detalles.

Ahora est conectado a la base de datos php_postgresql con el usuario


spark.
Creacin de la Tabla Usuario:
Nota: El tipo de dato serial, es similar a la funcin que cumple el campo auto_increment en MySQL.
php_postgresql=> create table usuario(id serial primary key, usuario
varchar(20) not null, contrasenia varchar(20) not null);
NOTICE: CREATE TABLE crear una secuencia implcita usuario_id_seq para la
columna serial usuario.id
NOTICE: CREATE TABLE / PRIMARY KEY crear el ndice implcito usuario_pkey
para la tabla usuario
CREATE TABLE
Insercin de Datos para la Tabla Usuario:
php_postgresql=> insert into Usuario (usuario, contrasenia) values ('spark',
'123456');
INSERT 0 1
php_postgresql=> insert into Usuario (usuario, contrasenia) values ('patrick',
'654321');
INSERT 0 1
php_postgresql=> insert into Usuario (usuario, contrasenia) values ('wilder',
'134265');
INSERT 0 1
Verificacin de Registros de la Tabla Usuario:
php_postgresql=> select * from Usuario;
id | usuario | contrasenia
----+---------+------------1 | spark
| 123456
2 | patrick | 654321
3 | wilder | 134265
(3 filas)
php_postgresql=>
2 Despus de haber creado la base de datos, tabla e insertar usuario, realizaremos la conexin de php
con postgresql, tal como se muestra a continuacin:
php_postgresql.php
<?php
$user = "spark";
$password = "123456";
$dbname = "php_postgresql";
$port = "5432";
$host = "localhost";
$cadenaConexion = "host=$host port=$port dbname=$dbname user=$user password=$password";
$conexion = pg_connect($cadenaConexion) or die("Error en la Conexin: ".pg_last_error());
echo "<h3>Conexion Exitosa PHP - PostgreSQL</h3><hr><br>";
$query = "select id, usuario, contrasenia from usuario";

$resultado = pg_query($conexion, $query) or die("Error en la Consulta SQL");


$numReg = pg_num_rows($resultado);
if($numReg>0){
echo "<table border='1' align='center'>
<tr bgcolor='skyblue'>
<th>ID</th>
<th>Usuario</th>
<th>Contrasena</th></tr>";
while ($fila=pg_fetch_array($resultado)) {
echo "<tr><td>".$fila['id']."</td>";
echo "<td>".$fila['usuario']."</td>";
echo "<td>".$fila['contrasenia']."</td></tr>";
}
echo "</table>";
}else{
echo "No hay Registros";
}
pg_close($conexion);
?>

Referencia: PHP Sitio Oficial PostgreSQL Sitio Oficial


Nota: Cualquier consulta comentar o visitar la pgina de Facebook para resolver sus dudas

Você também pode gostar