Como sabemos PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos y libre, publicado bajo la licencia BSD y PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor, como sabemos entre las ventajas de php tiene la capacidad de conexión con la mayoría de los motores de base de datos que se utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL.
Empezaremos creando un usuario en postgres, el usuario nuevo se llamara
"town" este sera creado con el superusuario "postgres", este usuario solo tendra permiso para trabajar nada mas en la DB q le asignemos, con esto quiero decir q el no puede crear, borrar, modificar DB/usuarios
Crando User
# createuser -Upostgres -sDRP town
Passwd: 12345
Luego de haber creado el usuario, vamos a crear la Base de Datos que usara este usuario.
Crear DB para user town
# createdb -U postgres -O town tienda
Entrar de Postgres con el usuario "town" y a la DB tienda
# psql -h 127.0.0.1 -Utown tienda
tienda=>
Crear Tabla en DB tienda
tienda=> CREATE TABLE cliente (
idcliente serial PRIMARY KEY,
nombre VARCHAR(30),
apellido VARCHAR(30),
direccion VARCHAR(200),
telefono DECIMAL(10));
Ver cuantas tablas hay en DB tienda
tienda=>\dt
Listado de relaciones
Schema | Nombre | Tipo | Dueño
--------------+----------------------+-----------+-------
public | cliente | tabla | town
Detalles de la tabla creada "cliente"
tienda=> \d cliente;
Tabla «public.cliente»
Columna | Tipo | Modificadores
-------------+-------------------------+-------------------------------
idcliente | integer | not null default extval('cliente_idcliente_seq'::regclass)
nombre | character varying(30) |
apellido | character varying(30) |
direccion | character varying(200) |
telefono | numeric(10,0) |
Índices:
«cliente_pkey» PRIMARY KEY, btree (idcliente)
Inserta registros en la tabla Cliente
tienda=> INSERT INTO cliente (nombre,apellido,direccion,telefono) VALUES ('Peter','Stown','Av 12apt 45','21035987');
INSERT 0 1
Consultar tabla
tienda=> SELECT * FROM cliente;
idcliente | nombre | apellido | direccion | telefono
---------+--------+--------+-----------------+--------------
1 | Peter | Stown | Av 12apt 45 | 21035987
(1 filas)
Listo hemos creado un user para nuestra DB, una base de datos, tabla y hemos insertado registros a la tabla, todo desde la consola. Ahora crearemos un file.php para conectar nuestras DB a php, y asi desde web insertar archivos y consultar.
Conectar PHP con Postgres
crearemos un archivo con el nombre de common.inc (Como tu quieras el nombre del archivo).
inc.php
$user = 'town';
$passwd = '12345';
$db = 'tienda';
$port = 5432;
$host = 'localhost';
$strCnx = "host=$host port=$port dbname=$db user=$user password=$passwd";
?>
Ahora crearemos el archivo de insertar archivos
agregar.php
<html>
<head>
<title>postgreSQL - tienda</title>
</head>
<body>
<h1>postgreSQL - cliente</h1>
<?php
include_once '../inc.php';
$cnx = pg_connect($strCnx) or die ("Error de conexion. ". pg_last_error());
echo "Conexion exitosa<br>";
# Ejecutando la Consulta
if ( $_POST ) {
$result = pg_query($cnx, "INSERT INTO cliente (nombre,apellido,direccion,telefono) VALUES ('" . pg_escape_string($_POST['nombre']) . "','" . pg_escape_string($_POST['apellido']) . "','" . pg_escape_string ($_POST['direccion']) . "'," . ((int)$_POST['telefono']) . " )");
if (!$result) {
echo "Query: Un error ha occurido.\n";
exit;
}
}
if ( $_POST )
echo "<div class=\"info\">Registro insertado
<a href=\"./ver\">volver</a></div>";
?>
<form action="" method="post">
<label>Nombre</label>
<input type="text" name="nombre" value="" class="txtbox long"/>
<label>apellido</label>
<input type="text" name="apellido" value="" class="txtbox long"/>
<label>Direccion</label>
<input type="text" name="direccion" value="" class="txtbox long"/>
<label>Telefono</label>
<input type="text" name="telefono" value="" class="txtbox"/>
<label>Password</label>
<input type="text" name="password" value="" class="txtbox"/>
<br />
<br />
<input type="submit" value="Guardar" class="btn"
/> <a href="./ver">volver</a>
</form>
<?php
pg_close($cnx);
?>
8 comentarios:
holaaa tu publicacion me ha servido muchisimo! me gustaria estar contacto contigo para ver si me puedes ayudar ya que soy nueva en la programacion y quiero aprender! te dejo mi correo jen_marquez@hotmail.com :)
muy bueno este blogs estas publicacion esta muy interesante
Excelente amigo me ha sido de gran utilidad
excelente para los novatos como yo....
hola por que no haces un ejemplo de inserción en tablas relacionas?, por lo menos dos tablas? por fk
gracias por tu publicacion me ha servido mucho cuando puedas colocar mas estaremos agradecidos ya que son muy buenas.
Muchas gracias hermano, muy interesante, didáctico, útil e interesante el contenido de tu blog
muy bien pero deberia de escribir las otras consultas eliminar , actualizar , consular individual y consulta general
Publicar un comentario