Usando Informix Con PHP
Usando Informix Con PHP
Usando Informix Con PHP
Diciembre de 2005
http://haxdai.freecoolsite.com 1
Tabla de Contenidos
Acerca de este documento..........................................................................................................................3
Marcas registradas......................................................................................................................................3
Introducción............................................................................................................................................... 4
Arquitectura de PHP e Informix............................................................................................................4
Instalación de los productos de Informix................................................................................................... 5
Determinando el órden de Instalación...................................................................................................5
Instalación de Informix Dynamic Server 10.0...................................................................................... 6
Requisitos del Sistema......................................................................................................................6
Proceso de Instalación...................................................................................................................... 6
Instalación de IBM Informix Client-SDK 2.90...................................................................................15
Componentes del Client-SDK........................................................................................................ 15
Requisitos del Sistema....................................................................................................................16
Proceso de Instalación.................................................................................................................... 16
Instalación de IBM Informix-Connect 2.90........................................................................................ 22
Requisitos del Sistema....................................................................................................................22
Proceso de Instalación.................................................................................................................... 22
Configuración de los productos cliente de Informix................................................................................33
Estableciendo las variables de entorno................................................................................................33
Estableciendo la información del servidor de bases de datos............................................................. 34
Estableciendo la información del host.................................................................................................35
Configuración del driver ODBC para IBM Informix.............................................................................. 36
Carga del módulo de Informix para PHP.................................................................................................42
Prueba de la configuración.......................................................................................................................42
Creación de una base de datos de prueba............................................................................................ 43
Verificación de la carga del módulo de Informix en PHP.................................................................. 45
Conexión a través de PHP a la base de datos test2............................................................................. 46
http://haxdai.freecoolsite.com 2
Acerca de este documento
Este texto no pretende ser un manual de programación en PHP ni un manual de manejo de bases
de datos Informix, su objetivo es enseñar al lector a instalar y configurar los productos de
Informix para conexiones a través de PHP con y sin el uso de conectores ODBC. Después de leer
éste documento, deberá ser capaz de construir un entorno de programación con acceso a bases
de datos para desarrollar aplicaciones Web utilizando PHP e Informix.
Se asume que el lector tiene correctamente instalado y configurado PHP como módulo
de Apache en Windows.
Marcas registradas
AIX, DB2, DB2 Universal Database, Distributed Relational Database Architecture, NUMA-Q,
OS/2, OS/390, y OS/400, IBM Informix, C-ISAM, Foundation.2000, IBM Informix 4GL, IBM
Informix DataBlade Module, Client SDK, Cloudscape, Cloudsync, IBM Informix Connect, IBM
Informix Driver for JDBC, Dynamic Connect, IBM Informix Dynamic Scalable Architecture(DSA),
IBM Informix Dynamic Server, IBM Informix Enterprise Gateway Manager (Enterprise Gateway
Manager), IBM Informix Extended Parallel Server, i.Financial Services, J/Foundation,
MaxConnect, Object Translator, Red Brick, IBM Informix SE, IBM Informix SQL, InformiXML,
RedBack, SystemBuilder, U2, UniData, UniVerse, wintegrate son marcas registradas de
International Business Machines Corporation.
Otros nombes de compañías, productos o servicios usados en este documento pueden ser marcas
registradas de sus respectivos propietarios.
http://haxdai.freecoolsite.com 3
Introducción
Muchos de nosotros alguna vez hemos tenido que crear páginas Web manejadas por bases de
datos, dichas páginas van desde simples formularios de registro hasta reportes de ventas con
gráficas y soluciones de comercio electrónico. Sin embargo, la situación se complica cuando
deseamos utilizar alternativas libres de desarrollo para acceder a datos en una base propietaria,
en nuestro caso, Informix.
Si es programador de C o PERL se sentirá como en casa con PHP ya que toma la sintaxis de esos
lenguajes. PHP puede ser integrado en el servidor Web Apache, haciéndolo aún más poderoso al
evitar la necesidad de crear un nuevo proceso cada vez que se ejecute un script. PHP fue creado
por Rasmus Lerdorf pero muchos desarrolladores se han unido para extender el lenguaje; entre
esos desarrolladores se encuentran Danny Heijl, Christian Cartus y Jouni Ahto, quienes se
encargan de la interfaz para Informix. PHP se puede integrar también con Microsoft IIS y
servidores Web de Netscape corriendo en Linux, UNIX, Microsoft Win95 y NT.
http://haxdai.freecoolsite.com 4
Instalación de los productos de Informix
Esta sección muestra el proceso de instalación del servidor de bases de datos Informix Dynamic
Server, el Client-SDK y el Informix Connect. El orden de instalación mostrado es el sugerido por
los autores, sin embargo, esto no significa que sea un estándar que se deba adoptar en todos los
casos.
Si se instalan los productos del cliente y servidor de Informix en el mismo directorio, se debe
seguir el orden de instalación descrito en la tabla de abajo (para este caso el orden es: Servidor,
clientes) dependiendo de las versiones a utilizar. Si se realiza la instalación en directorios
diferentes para cada producto de Informix, el órden es irrelevante.
La siguiente lista describe las versiones del servidor de bases de datos y sus nombres
correspondientes.
http://haxdai.freecoolsite.com 5
Instalación de Informix Dynamic Server 10.0
Proceso de Instalación
http://haxdai.freecoolsite.com 6
En la siguiente ventana se le presentará habilitada la opción de instalación en dominio siempre y
cuando la máquina donde se instalará pertenezca a uno, de otro modo (como en este caso) la
opción aparecerá en gris. Haga click en el botón Siguiente.
http://haxdai.freecoolsite.com 7
A continuación deberá elegir el directorio de Instalación del servidor de bases de datos, procure
que la ruta sea corta y no se utilicen espacios en el nombre. En este caso elegimos C:\Informix.
Presione el botón siguiente.
Se le preguntará por el método de instalación a usar. Las opciones son Typical (requiere más
espacio en disco y memoria. Es la opción recomendada), Minimal (Conserva la mayor parte de
espacio) y Custom (permite realizar pasos avanzados de instalación). Para este caso
seleccionamos Typical. Haga click en el botón Siguiente.
http://haxdai.freecoolsite.com 8
Posteriormente se le preguntará si desea separación de roles. Esta opción proporciona más
seguridad en las bases de datos ya que el servidor divide las tareas administrativas en roles
mutuamente exclusivos. Para éste ejemplo, no deseamos separación de roles. Presione
Siguiente.
http://haxdai.freecoolsite.com 9
El instalador le avisará que está listo para iniciar la copia de archivos al sistema. Haga click en
Siguiente cuando desee iniciar.
El proceso de copia de archivos comienza. Puede pulsar el botón Cancel en cualquier momento
para detener la instalación.
http://haxdai.freecoolsite.com 10
Ahora el instalador le avisa que iniciará el proceso de configuración del servidor. Haga click en
Siguiente para iniciar.
En la siguiente ventana deberá elegir el número de servidor, que identifica al servidor de bases
de datos en caso de tener instalada más de una instancia del servidor. Seleccione 0 y continúe.
http://haxdai.freecoolsite.com 11
Escriba el nombre para el servidor de bases de datos Informix, que lo identificará ante las
aplicaciones cliente. El nombre debe iniciar con una letra y puede contener solamente letras,
números y el caracter de subrayado. En este caso se llama ol_cliente.
En la ventana de selección de nombre de servicio y número de puerto deje las opciones por
default, sólo debe modificarlas en caso de tener más de una instancia de la base de datos
instalada en la misma máquina.
http://haxdai.freecoolsite.com 12
En la ventana de Administración del sistema elija el equipo donde se mantendrá actualizada la
lista de sqlhosts y se instalarán las utilidades administrativas, en nuestro caso, como la
instalación es local, se especificó la PC local. Presione Siguiente.
http://haxdai.freecoolsite.com 13
Se inicializará el servidor y se le informará del final del proceso de instalación. Deberá reiniciar
el sistema para aplicar los cambios necesarios.
Ahora el servidor de bases de datos Informix estará disponible en el menú inicio y como un
servicio del sistema operativo.
http://haxdai.freecoolsite.com 14
Instalación de IBM Informix Client-SDK 2.90
Client-SDK permite desarrollar y ejecutar aplicaciones cliente. La siguiente tabla describe los
componentes del Client-SDK. Las aplicaciones que corren en computadoras cliente requieren de
IBM Informix Connect para accesar a los servidores de bases de datos.
Componente Descripción
Permite a las aplicaciones .NET acceder y manipular datos
IBM Informix .NET Provider
en una base de datos Informix.
Un lenguaje SQL empotrado usado para crear aplicaiones
ESQL/C con soporte XA
personalizadas en C.
Una interfaz para C++ para desarrollar aplicaciones
IBM Informix Object Interface para C++
orientadas a objetos que acceden a bases de datos Informix.
Una interfaz que permite a los productos de Informix usar
IBM Informix GLS diferentes locales que definen convenciones para
determinados lenguajes, culturas o conjuntos de caracteres.
Una implementación para Informix del estándar ODBC 3.0
IBM Informix ODBC Driver con soporte MTS
nivel 1.
IBM Informix OLE DB Provider Un proveedor OLE DB nativo del lado del cliente.
Una implementación para Informix del estándar de
IBM Informix JDBC Driver
Microsoft Java Database Connectivity.
Un componente que actualiza los elementos del entorno de
Componentes de Microsoft Data Access
Windows.
Módulo de IBM Informix Password Communications
Password CSM
Support para aplicaciones cliente.
Proceso de Instalación
http://haxdai.freecoolsite.com 15
Se le mostrará el acuerdo de licencia, los términos y condiciones de uso del software. Si ha leído
cuidadosamente el documento y está de acuerdo con lo mencionado, active el botón de radio
correspondiente y posteriormente haga click en el botón Next.
http://haxdai.freecoolsite.com 16
Proporcione la información del cliente que se le solicita y haga click en Next.
http://haxdai.freecoolsite.com 17
Ahora elija el directorio de instalación del programa haciendo click en el botón Change e
indicando la ubicación o dejando el directorio por defecto. En nuestro caso, se instalará en
C:\Informix. Una vez hecho, haga click en el botón Next.
Le aparecerá una ventana de información indicando que el instalador está listo para iniciar el
proceso. Presione el botón Install.
http://haxdai.freecoolsite.com 18
Se iniciará la copia de archivos y la configuración del software.
http://haxdai.freecoolsite.com 19
Una vez finalizada la instalación le aparecerá la ventana de verificación y posteriormente una
ventana indicando el fin del proceso. Haga click en el botón Finish para terminar.
http://haxdai.freecoolsite.com 20
Instalación de IBM Informix-Connect 2.90
Proceso de Instalación
Se le mostrará el acuerdo de licencia, los términos y condiciones de uso del software. Si ha leído
cuidadosamente el documento y está de acuerdo con lo mencionado, active el botón de radio
correspondiente y posteriormente haga click en el botón Next.
http://haxdai.freecoolsite.com 21
Proporcione la información del cliente que se le solicita y haga click en Next.
http://haxdai.freecoolsite.com 22
En la siguiente ventana elija el tipo de instalación completa y continúe.
Ahora elija el directorio de instalación del programa haciendo click en el botón Change e
indicando la ubicación o dejando el directorio por defecto. En nuestro caso, se instalará en
C:\Informix. Una vez hecho, haga click en el botón Next.
http://haxdai.freecoolsite.com 23
El instalador le preguntará si desea definir la variable de entorno INFORMIXDIR para que
coincida con el directorio actual de instalación. Active el botón Set INFORMIXDIR to the
newly chosen directory y presione Next.
Le aparecerá una ventana de información indicando que el instalador está listo para iniciar el
proceso. Presione el botón Install.
http://haxdai.freecoolsite.com 24
Se iniciará la copia de archivos y la configuración del software.
http://haxdai.freecoolsite.com 25
http://haxdai.freecoolsite.com 26
Configuración de los productos cliente de Informix
Esta sección describe la forma de usar la utilidad Setnet32 para configurar los productos del
Client-SDK. Setnet32 establece o modifica las variables de entorno y parámetros de red que los
productos de IBM Informix usan en tiempo de ejecución. La ventana de Setnet32 está dividida
en cuatro secciones:
Para acceder a Setnet32 haga click en Inicio>Todos los programas>IBM Informix Client-
SDK 2.90>Setnet32 para acceder a la ventana principal de Setnet32.
Para obtener información acerca de los productos de IBM Informix y el entorno donde corren, los
productos cliente necesitan acceder a las variables de entorno. Algunas de ellas son obligatorias
y otras son opcionales.
http://haxdai.freecoolsite.com 27
En la ficha Environment establezca los siguientes valores seleccionando la variable, escribiendo
su valor en la sección Edit Environment Variable y haciendo click en Set.
CLIENT_LOCALE = EN_US.CP1252
DB_LOCALE = EN_US.8859-1
DBLANG = EN_US.CP1252
DBTEMP = C:\Informix\infxtmp
INFORMIXDIR = C:\Informix
INFORMIXSERVER = ol_cliente
Los valores de las variables anteriores se obtienen de la información que aparece al ejecutar la
instancia del servidor de Informix ol_cliente y pueden variar para cada caso.
Una aplicación cliente se conecta a un servidor de bases de datos Informix corriendo en una
computadora que puede ser alcanzada a través de la red. Para establecer la conexión se utiliza la
ficha Server Information de Setnet32. En ella se establece la ubicación del servidor en la red y
el protocolo a usar para las comunicaciones. Esta información la posee el administrador del
servidor de bases de datos.
http://haxdai.freecoolsite.com 28
Estableciendo la información del host
Un aplicación cliente hace conexiones únicamente a una computadora host alcanzable a través
de la red, se describe la conexión a un host especificando sus parámetros. En la ficha Host
Information se pueden establecer dichos parámetros (nombre de usuario, contraseña, tipo de
autentificación).
http://haxdai.freecoolsite.com 29
Configuración del driver ODBC para IBM Informix
Esta sección describe el proceso de configuración del driver ODBC para Informix de modo que se
puedan hacer conexiones desde los programas que usen este tipo de conectores. Es requisito que
la instancia del servidor de bases de datos esté en ejecución (puede verificarlo en los servicios
del sistema operativo).
http://haxdai.freecoolsite.com 30
Haga doble click en la opción Orígenes de datos (ODBC) para abrir el Administrador de
orígenes de datos.
http://haxdai.freecoolsite.com 31
Aparecerá la ventana Crear nuevo orígen de datos, seleccione IBM INFORMIX ODBC
DRIVER de la lista de orígenes y haga click en Finalizar.
En la ventana que aparece escriba un nombre para la fuente de datos (servirá para identificarla
en los programas que utilicen el conector) en la ficha General.
http://haxdai.freecoolsite.com 32
En la ficha Connection proporcione los parámetros de conexión al servidor y especifique la base
de datos con que se desea conectar. Al terminar presione el botón Apply & test connection
para probar la conexión.
De tener éxito, le aparecerá un diálogo de aviso, en caso contrario, deberá modificar los
parámetros y verificar que la instancia del servidor está en ejecución.
http://haxdai.freecoolsite.com 33
En la ficha Environment proporcione la información de las locales y la librería de traducción
(consulte la página de IBM Informix para obteber información acerca de las librerías de
traducción disponibles).
Una vez terminado, haga click en Aceptar, ahora aparecerá el DSN creado en la lista de DSN de
sistema. Salga del Administrador de orígenes de datos guardando los cambios.
http://haxdai.freecoolsite.com 34
Carga del módulo de Informix para PHP
Prueba de la configuración
Será necesario crear una base de datos de prueba para acceder a ella a través de PHP. Para ello,
inicie el servidor de bases de datos Informix desde los servicios del sistema como se muestra a
continuación.
1 2
http://haxdai.freecoolsite.com 35
Creación de una base de datos de prueba
Posteriormente ejecute la instancia del servidor a través del menú inicio. Aparecerá una ventana
de símbolo del sistema donde se configurarán las variables de entorno, una vez en el prompt
teclee dbaccess <ENTER> para acceder al menú de administración del servidor.
Una vez dentro deberá conectarse a un entorno de bases de datos, para ello, en el meú elija la
opción Database y presione ENTER.
http://haxdai.freecoolsite.com 36
Introduzca el nombre de la nueva base de datos y presione ENTER.
http://haxdai.freecoolsite.com 37
Una vez seleccionado, salga del menú CREATE DATABASE y seleccione create-new-database.
Una vez creada regrese al menú principal DBACCESS. Ahora se tiene una base de datos llamada
test2 (para este caso). Se usará un script PHP para conectarse a esta base de datos. Si desea
crear o modificar tablas en la base de datos consulte la documentación de IDS.
http://haxdai.freecoolsite.com 38
Si no obtiene información acerca de Informix, repita los pasos de carga del módulo para PHP o
consulte la documentación de los productos.
<?php
$d=ifx_connect("test@ol_cliente","informix","password");
if($d==null)
echo "error";
else
echo "<b>success! accessing through ifx library</b><br><br>";
?>
Hasta aquí concluye este documento. Si desea más ejemplos de scripts de conexión o de
obtención y manipulación de datos puede enviar un correo a los autores.
http://haxdai.freecoolsite.com 39