Está usted en Indice > Construcción > Lenguajes > PHP > Lecciones y Paso a Paso > Trabajar con Firebird/Interbase en PHP
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Trabajar con Firebird/Interbase en PHP

La conexión de PHP con InterBase

Lo primero que hay que hacer es realizar la conexión, por medio del comando PHP:

ibase_pconnect("base_de_datos.gdb", "USUARIO", "contraseña");

donde el primer parámetro es la ruta completa hacia la base de datos, por ejemplo, si estamos utilizando Linux, podría ser algo así:

/opt/interbase/bases/mi_base.gdb

o si usáramos Windows, podría ser algo así:

c:basesmi_base.gdb

El segundo parámetro se refiere al usuario. Es cierto, se puede utilizar SYSDBA, aunque siempre recomiendo crear otro usuario y asignarle permisos a la tabla que vamos a acceder, esto es porque en el tercer parámetro debemos de especificar la contraseña del usuario, y no conviene mostrar la contraseña del administrador del sistema (SYSDBA).

No olvides asignar permisos al usuario mediante una orden como esta, suponiendo que el usuario se llama USU_PHP:

GRANT ALL ON TABLAX TO USU_PHP

donde TABLAX es cualquier tabla que vamos a acceder desde el programa PHP.

De esta manera, un ejemplo de conexión quedaría así:

ibase_pconnect("/opt/interbase/bases/mi_base.gdb", "USU_PHP", "usu0189xf");

Aquí hay que tomar en cuenta esto:

a) Si usas Linux, y usas la versión Classic Server, entonces puedes
crear las bases de datos en cualquier directorio, sólo que debes darle
todos los permisos al archivo con el comando chmod de Linux.

b) Si usas Linux y usas Super Server, entonces la base de datos la
debes crear en un directorio que tenga permisos para el usuario InterBase.

Cómo ejecutar SQL

Para ejecutar una instrucción SQL, primero deberás haber ejecutado la instrucción ibase_pconnect que se mencionó antes.

La ejecución de una instrucción SQL se hace con la función ibase_query, la cual debes asignar a una variable de PHP:

$Q = ibase_query("SELECT * FROM TABLAX");

también puedes ejecutar SQL para insertar, modificar o eliminar:

$Q = ibase_query("INSERT INTO TABLAX(CAMPO1, CAMPO2) VALUES ('$valor1', '$valor2');");

Obviamente la diferencia es que una instrucción SELECT nos devolverá datos de la tabla, mientras que otra instrucción SQL no lo hará (como INSERT, DELETE o UPDATE).

Para obtener los registros resultantes de una consulta con SELECT, utilizaremos esta instrucción:

$R = ibase_fetch_object($Q);

como se ve, $Q es la variable que se utilizó en la instrucción ibase_query. Cada vez que se ejecuta la instrucción anterior, se va obteniendo un registro de la consulta. Para obtener todos los registros de la consulta, hay que insertarlo en una instrucción while:

while ($R = ibase_fetch_object($Q)) {
echo $R->CAMPO1 . "
";
}

Aquí se observan varias cosas: primero, que el ciclo se ejecutará hasta llegar al último registro, únicamente ejecutando varias veces el comando ibase_fetch_object. También hay que poner atención en que el nombre del campo vaya con mayúsculas, ya que si se escribe con minúsculas no va a funcionar.



Usuarios que han visto este tema también han visto...

- Subir archivos con PHP por FTP
- Alcance de las variables en PHP
- Editar y Borrar datos en MySQL con PHP
- Graficas de quesitos en 3D en PHP
- Contar el número de lineas y caracteres en archivo PHP


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 19-11-2008 a las 23:27:59