Foros del Web » Programando para Internet » PHP »

Como hago un Thumbnail en PostgreSQL+PHP

Estas en el tema de Como hago un Thumbnail en PostgreSQL+PHP en el foro de PHP en Foros del Web. Hola Comunidad...despues de tiempo e regresado con una inquietud espero me puedan ayudar Estoy utilizando Appserv2.59, Win XP y lo pruebo de manera local mi ...
  #1 (permalink)  
Antiguo 18/04/2008, 15:18
Avatar de Enishy  
Fecha de Ingreso: septiembre-2007
Mensajes: 121
Antigüedad: 16 años, 7 meses
Puntos: 1
Como hago un Thumbnail en PostgreSQL+PHP

Hola Comunidad...despues de tiempo e regresado con una inquietud espero me puedan ayudar

Estoy utilizando Appserv2.59, Win XP y lo pruebo de manera local mi proyecto

Eh tomado el codigo de un blog en le cual se inserta la imagen y se visualiza pero en mi codigo de List_Imagen.php hago referencia a un View_Thumbnail.php y es el que necesito implementar pues no se como hacer un thumbnail de una imagen con tipo de dato OID pues como se daran cuenta en el codigo la manera de viualizarlo e ingresarlo es diferente a el ejemplo que hay aqui en el Foro hecho por Cluster

Esta es la estructura de mi tabla

Cita:
Create table IMAGEN
(
codigo_imagen Integer NOT NULL,
imagen_oid Oid NOT NULL,
imagen_nombre Varchar(100) NOT NULL,
imagen_peso Integer NOT NULL,
imagen_tipo Varchar(20) NOT NULL,
primary key (codigo_imagen)
) Without Oids;
Inserto la imagen en la tabla con este codigo:

Insert.php
Código PHP:
<?php
//establece una conexión con la base de datos.
include("Conexion.php");
if(isset(
$_POST["enviar"]))
{    
// Obtenemos los datos del archivo subido en el formulario
    
$nombre    $_FILES["archivo"]["name"];
    
$tamano $_FILES["archivo"]["size"];
    
$mime    $_FILES["archivo"]["type"];
    
$arch_tmp$_FILES["archivo"]["tmp_name"];

    
// Verificamos que el archivo se haya subido correctamente
    
if( $nombre !="" && $tamano!=)
    {    
// Leemos el archivo que se ha subido en el servidor
        
$fp_archfopen($arch_tmp"rb");
        
$buffer    fread($fp_archfilesize($arch_tmp));
        
fclose($fp_arch);
        
        
// Aqui en adelante es necesario trabajar con transacciones
        // para asegurar la integridad del archivo
        
pg_exec($dbh"BEGIN TRANSACTION");
        
$oid_archivopg_locreate($dbh);    // Creamos un OID para nuestro archivo
        //Archivo Max Codigo
        
$query_arch=pg_exec($dbh,"SELECT Max(codigo_imagen) AS arch FROM imagen") or die ("Error SQL Archivo");
        
$data_arch=pg_fetch_array($query_arch);
        
$max_arch=$data_arch[arch];
        
$maxi_arch=$max_arch+1
        
//insertamos los datos en la BD.
        
$SQL_insert    "INSERT INTO imagen VALUES('$maxi_arch', '$oid_archivo', '$nombre', '$tamano', '$mime')";
        
$RES_insert pg_exec($dbh$SQL_insert);

        
$campo_blob    pg_loopen($dbh$oid_archivo"w");

        
// Escribimos en el OID el archivo previamente leido en buffer
        
pg_lowrite($campo_blob$buffer);
        
pg_loclose($campo_blob);

        
// Finalizamos nuestra transacción
        
pg_exec($dbh"COMMIT TRANSACTION");
    }
include 
"close_conexion.php";
}
header("location: List_Image.php");
?>
Con este codigo puedo Visualizarlo:

View.php
Código PHP:
<?php
include "conexion.php";
if(isset(
$_GET['codigo_imagen'])) {
    
// you may have to modify login information for your database server:
    
$sql "SELECT * FROM imagen WHERE codigo_imagen='".$_GET['codigo_imagen']."'";
    
$consulta pg_exec($dbh,$sql);
    if( 
pg_numrows($consulta) > ){    
    
$row pg_fetch_object($consulta);

    
$nombre        $row->imagen_nombre;
    
$tamano        $row->imagen_peso;
    
$archivo_oid$row->imagen_oid;
    
$tipo_mime    $row->imagen_tipo;

    
pg_exec($dbh"BEGIN TRANSACTION");
    
$campo_blob    pg_loopen($dbh$archivo_oid"r");

    
// Creamos las cabeceras para ver el archivo
    
header("Content-type: $tipo_mime");
    
header("Pragma: no-cache");
    
pg_loreadall($campo_blob);

    
pg_loclose($campo_blob);
    
pg_exec($dbh"COMMIT TRANSACTION");
    }
}
include 
"close_conexion.php";
?>
Con esto listo la imagen:

List_Image.php
Código PHP:
<table width="600" border="0" cellpadding="3" cellspacing="1" align="center">
<tr>
<td><strong>Esta Imagen se insertara en la Ficha</strong></td>
</tr> 
<tr>
<td align="center">
<?php
include("Conexion.php");
$sql "SELECT MAX(codigo_imagen) FROM imagen";
$consulta pg_exec($dbh,$sql) or die ("No se pudo ejecutar la consulta");
$row=pg_fetch_row($consulta);
echo 
"<a href=\"#\" onClick=\"popUpWindow('view.php?codigo_imagen=$row[0]', 10, 10, 800, 600)\">
<img src=\"view_thumbnail.php?codigo_imagen=$row[0]\" border=\"0\" /></a>"
;
echo 
"<table>
<tr>
<td><a href='NewFC_Oseo.php'>.::Regresar::.</a> </td>
<td><a href='DeleteImage.php?id=$row[0]'><img src='images/b_drop.png' title='Elimina Imagen' border='0' height='16' hspace='2' width='16'></a> </td>
</tr>
</table>"
;
include(
"close_conexion.php");
?>
</td>
</tr>
</table>
  #2 (permalink)  
Antiguo 18/04/2008, 16:33
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Re: Como hago un Thumbnail en PostgreSQL+PHP

necesitas usar alguna libreria de GD....

http://www.forosdelweb.com/f18/phpim...-error-574590/


ahi ronda una libreria para GD2... incluye una funcion para miniaturas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:09.