![]() |
Se Puede Trabajar FireBird con PHP????
Quiero hacer mi primera programa en PHP haciendo una consulta a una tabla de una base de datos, ya instale el Apache 2.054 y el PHP 4 ya realize las configuraciones pertinentes para PHP y el Apache, tengo el siguiente Código que uso para conectarme a la BD y hacer la consulta a una tabla:
Código PHP:
Warning: ibase_connect(): unavailable database in C:\Servidor\php\Paginas\QryFireBird1.php on line 5 Warning: ibase_query(): no InterBase link resource supplied in C:\Servidor\php\Paginas\QryFireBird1.php on line 7 Warning: ibase_fetch_object(): supplied argument is not a valid InterBase result resource in C:\Servidor\php\Paginas\QryFireBird1.php on line 8 Warning: ibase_close(): 0 is not a valid InterBase link resource in C:\Servidor\php\Paginas\QryFireBird1.php on line 12 Este ejemplo lo tome de este club.... Que estare haciendo mal???? Agradezco cualquier sugerencia al respecto.... |
Cita:
Cita:
Sugiero que el servidor de interbase sea arrancado antes de intentar de nuevo acceder a esta página. Hasta luego. ;) |
????
Cita:
|
El mensaje de error es típico de cuando el servidor no está levantado. Si no es eso, pues francamente no tengo idea por ahora.
|
Prueba a indicar el nombre de la computadora, ejemplo:
$path = 'localhost:c:\Ejemplo\datos\MiBD.gdb'; Otra cosa, los nombres de los campos debes indicarlos en mayusculas, porque asi los devuelve el modulo de interbase, sino php no los encontrará (php es case-sensitive en los nombres de las variables como C) ejemplo: print $fila->EMAIL . "\n"; Si tienes dudas sobre lo que contiene $fila, puedes probar a hacer un: print_r($fila); Que te imprimira todo el contenido del registro $fila incluidos nombres de campos y valores , indicando tambien si la variable se trata de un objeto o un array, etc, bastante util para debugear. Otra cosa, es aconsejable utilizar ibase_pconnect en lugar de ibase_connect, ya que es muchisimo mas rapido mantener la conexion entre peticiones de paginas, que reconectar en cada peticion. Mas cosas, es aconsejable que indiques el charset en el ibase_connect, si tus paginas web van en iso normal: $ibase_charset = 'ISO8859_1'; Si tus paginas van en UTF-8 (formato que cada vez se utiliza mas sobre todo en paginas que deben poder internacionalizarse ya que permite mostrar los caracteres de cualquier idioma): $ibase_charset= 'UNICODE_FSS'; Usando firebird esta ultima opcion es muy util, ya que aunque la base de datos originalmente este guardada en ISO8859_1 firebird hace la conversion de forma automatica, devoviendo la informacion directamente en UTF-8. Saludos |
Ahora....
Cita:
$ibase_charset= 'UNICODE_FSS'; en la Ruta de la Base de Datos Probe usando las 2 Diagonales (/ \), pero ahora me pone la Página en BLANCO ni siquiera me pone ningún Error, Ahora que estará pasando???? Gracias por sus Respuestas.... |
Si te sale una pagina en blanco, no hay errores y el script se ha ejecutado correctamente.
Simplemente el resultado de la query no ha devuelto datos, por eso no hay nada que mostrar. Prueba a debugear un poco poniendo echo(s) y print_r(s) para ver por donde va el fllujo del programa. Saludos Miguel |
ok
Voy a investigar un poco en debugear con echo(s) y print_r(s)...
Gracias Que Tenga Buen Día.... |
ya quedo
Asi es, como me lo menciono Mick, estaba bien las instrucciones pero sólo me faltaba mandar a imprimirlo por pantalla, quedo de la siguiente manera con echo:
Código PHP:
Que Tengan Buen Día.... |
AGAG4
¿Puedes poner el codigo completo corregido. ? no encuentro donde insertaste el codigo que muestras. imprimiendo con echo vale gracias |
Hice pruebas. por que tengo interes en usar
firebird, php y apache juntos Tome tu codigo y le cambien unas cosas. Esto es la direccion deonde tengo la base de datos y nombre $path = 'C:\EMPLOYEE.FDB'; La tabla se llama EMPLOYEE $sql = 'SELECT * FROM EMPLOYEE'; y la fila print $fila->EMP_NO . "\n"; solo cambien los datos y funcionara. ------------------------- Código PHP:
Otra cosa a mi me funciono bien. con print y con echo con print se mostraban los datos en una sola linea asi 2458911 usando echo se mostraron asi 2 4 5 8 9 11 ----------- Alo mejor a ti te dio error AGAG4, por que no habias registrado la base de datos. yo la registre. Esto para que si a alguien le interesa. lo pongo. |
La franja horaria es GMT +2. Ahora son las 17:56:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi