Sunteți pe pagina 1din 3

Sincronizar PostgreSQL con PHP

y Wampserver
PHP, PostgreSQL, Wampserver 9 de marzo de 2012 Comentarios: 5

Una de las cosas que ms me agrada de PHP es su facilidad de uso. Siempre use Wampserver para mis
aplicaciones y casi nunca me surgi la idea de trabajar con un motor de base de datos diferente a
MySql, hasta ahora.

Bien mi plataforma de trabajo es Win 7 de 32 bits, PHP 5 y PostgreSQL 9.1.

Intente con algo simple para realizar esta sincronizacin y me cree una base de datos con el siguiente
script.

CREATE DATABASE biblioteca

CREATE TABLE autor


(
codautor serial NOT NULL,
nomautor character varying(20),
appautor character varying(20),
apmautor character varying(20),
CONSTRAINT autor_pkey PRIMARY KEY (codautor )
)
WITH (
OIDS=FALSE
);
ALTER TABLE autor
OWNER TO postgres;

Luego codifiqu mi script en PHP como cualquier mortal (lo coloque en C:\wamp\www y lo llam
index.php )

<?php
$cadena="host='localhost' port='5432' dbname='biblioteca' user='postgres'
password='hola1234'";
$con=pg_connect($cadena) or die("Error de conexion.". pg_error());

$sql = "SELECT * FROM autor";

$result = pg_query($sql) or die("Error query.". pg_error());

$cont=pg_num_rows($result);

echo "RESULTADOS DE LA CONSULTA";


echo "<hr/>";
echo "<ul>";
while($row=pg_fetch_array($result, null, PGSQL_ASSOC))
{
echo "<li>".$row["codautor"].", ".$row["nomautor"].", ".$row["appautor"].", ".
$row["apmautor"]."</li>";
}
echo "</ul>";
echo "<hr/>".$cont." autores obtenidos";
?>

proced con Wampserver ya en marcha dirigirme a http://localhost/PostgressPHP/ para ver si mi cdigo


funcionaba. Oh! sorpresa me sale el siguiente error.

al hacer mis averiguaciones encontr que faltaba habilitar las extensiones php_dso_pgsql
y php_pgsql lo cual es sumamente fcil y aqu ya lo tengo echo para los que no saben hacerlo.

Asi que recargue Wampserver y con todas las ansias fui de neuvo a http://localhost/PostgressPHP/,
lastima que vuelve a tirar el mismo error.

Despus de mucho googlear encontr la solucin.

Los pasos dados hasta ahora son correctos, pero despus de activar las extensiones estas an no son
reconocidas por Apache. Note en la siguiente captura que an no aparecen las extensiones de postgres
cargadas.
Para que estas sean reconocidas se debe de agregar a la variable de entorno PATH las siguientes
entradas: C:\Program Files\PostgreSQL\9.1\bin y C:\Program Files\PostgreSQL\9.1\lib si lo
instalaron en los lugares por defecto. Los que no saben realizar esto, pueden intentar guiados por la
siguiente imagen.

Ahora recargamos Wampserver y si nos vamos al localhost obtenemos que las extensiones ya estn
cargadas.

y finalmente ya tenemos la sincronizacin completa y obtenemos el resultado deseado.

S-ar putea să vă placă și