Como insertar y mostrar blobs en Interbase con php ó C++

Temas relacionados con Interbase, el gestor libre basado en el: Firebird

Como insertar y mostrar blobs en Interbase con php ó C++

Notapor rquilca » Mié Jun 04, 2003 8:14 pm

ALguien que me pueda ayuda, tengo este pequeño problema, en lo posible enviar codigo fuente.
Gracias
rquilca
Novato
Novato
 
Mensajes: 3
Registrado: Mié Jun 04, 2003 7:53 pm


Re: Como insertar y mostrar blobs en Interbase con php ó C++

Notapor latindev » Mié Jun 04, 2003 8:52 pm

Bueno, no hay mucha documentacion al respecto, yo intente agregar imagenes a un campo de una tabla con el siguiente codigo y funciona perfectamente

Código: Seleccionar todo
  1.  

  2. echo "<br>Iniciando";

  3. $db_database = "/root/data/fotos.gdb";

  4. $db_username = "SYSDBA";

  5. $db_password = "masterkey";

  6. $link_ibase = ibase_pconnect($db_database, $db_username, $db_password) or die(MostrarError("No es posible establecer conexion con el servidor de Interbase",ICON_STOP,"javascript:history.back();"));

  7.  

  8. $images[0] = 910728;

  9. $images[1] = 921361;

  10. ....

  11. ....

  12. $images[328] = 991748;

  13. $images[329] = 991749;

  14.  

  15. $strdir = "/root/images/cpis/";

  16. $extension = ".jpg";

  17.  

  18. for($i = 0 ; $i < 330; $i++){

  19.     $archivo = $strdir.$images[$i].$extension;

  20.     $archivo_imagen = fopen($archivo,"r");

  21.     $blob_obj = @ibase_blob_import($archivo_imagen);

  22.     @ibase_query("insert into imagenes (idestudiante, imagen) values ($images[$i], ?)", $blob_obj);

  23.         fclose($archivo_imagen);

  24.         echo "\n<br><b>$i</b> Imagen insertada : $archivo ";

  25.         @ibase_commit();

  26. }

  27. echo "\n<br>Terminado";

  28. ibase_close($link_ibase);

  29.  



Espero que el codigo te sirva... :wink:

Debo mencionar que funciona mejor en Linux, por que el php (4.0.6) tiene problemas para cerrar las conexiones.
Última edición por latindev el Vie Jun 20, 2003 11:29 am, editado 1 vez en total
Avatar de Usuario
latindev
Administrador
Administrador
 
Mensajes: 1062
Registrado: Lun Jun 02, 2003 8:30 pm
Ubicación: Peru


Como mostrar campos BLOB's en PHP

Notapor latindev » Sab Jun 07, 2003 10:40 am

Escribi un comentario acerca de como subir archivos a n cambo blob pero no dije como mostrarlos con PHP.

El articulo lo pueden ver aqui: http://www.titiqaqa.com/cpis/foro/viewtopic.php?p=6

Aqui les va elcodigo para mostrar un campo blob.

Código: Seleccionar todo
  1.  

  2. <?php

  3.  /*

  4.    el la variable $id debe ser enviado como parametro

  5.   */

  6.  /* Mandando las cabeceras de la imagen */

  7.   Header("Content-type: image/jpg");

  8.  

  9.  /* Verificando la existencia de la imagen */

  10.   $db_database = "/root/data/fotos.gdb";

  11.   $db_username = "SYSDBA";

  12.   $db_password = "masterkey";

  13.   $link_ibase = ibase_pconnect($db_database, $db_username, $db_password) or die(MostrarError("No es posible establecer conexion con el servidor de Interbase",ICON_STOP,"javascript:history.back();"));

  14.   $code = $id;

  15.   $res = @ibase_query("select count (idestudiante) as codigo from imagenes where idestudiante = $code",$link_ibase);

  16.   $row = ibase_fetch_row($res);

  17.   if($row[0]+0 == 0){

  18.         $code = "1";

  19.   }

  20.   ibase_free_result($res);

  21.  

  22.   $q = ibase_query("select imagen from imagenes where idestudiante = $code");

  23.  

  24.  /* Escribiendo la imagen en la salida*/

  25.   $row = ibase_fetch_object($q);

  26.  

  27.   ibase_blob_echo($row->IMAGEN);

  28.  

  29.   ibase_free_result($q);

  30.   ibase_close($link_ibase);

  31. ?>

  32.  



no olviden de visitar http://www.navisoft.tk :wink:
Avatar de Usuario
latindev
Administrador
Administrador
 
Mensajes: 1062
Registrado: Lun Jun 02, 2003 8:30 pm
Ubicación: Peru


    

Volver a Interbase & Firebird

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados