Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


recuperar varia imagen de MySQL y mostrarlas todas

Aqui hay un espacio para los amantes del lenguaje PHP

recuperar varia imagen de MySQL y mostrarlas todas

Notapor menvel el Mié Ago 01, 2007 1:22 pm

Hola!!!

tengo un pequeño problema sobre imagenes almacenadas en MySQL,

tengo este script:

<?php
include "datos2.php";
$conexion = mysql_connect( "127.0.0.1", "root", "menvel" );
mysql_select_db("tipscuernavaca");
$query = "select idfoto,thumb from imagen;";
$operacion =mysql_query( $query, $conexion);

while( ($datos =mysql_fetch_row( $operacion) )<>NULL)
{
header("Content-Type: image/jpeg");
echo $datos[1];
}
mysql_close( $conexion );
?>

me funciona a la perfeccion, el problema es que en la consulta me recupera 10 registros en los cuales existen 10 imagenes que es el campo thumb, pero a la hora de mostrarme los resultados solo me muestra una imagen "YO KIERO QUE ME MUESTRE LAS 10 IMAGENES EN LA MISMA PAGINA WEB", no se como hacerle help me please!!!!!!!
menvel
Novato
Novato
 
Mensajes: 1
Registrado: Mié Ago 01, 2007 1:13 pm

RE: ecuperar varia imagen de MySQL

Notapor Bestprogramado el Jue Ago 02, 2007 10:03 am

La verdad, nunca he trabajado con imagenes en MySQL

Me parece que hacerlo con un solo script, me parece imposible, yo te diria hagas dos scripts php:
1º Carga 1 imagen (Content-Type: image/jpeg), se define mediante el metodo GET
2º Carga las 10 imagenes usando el 1º script. usando los tag's <img>

1º Script:

Código: Seleccionar todo
<?php
include "datos2.php";
$conexion = mysql_connect( "127.0.0.1", "root", "menvel" );
mysql_select_db("tipscuernavaca");

$query = "SELECT idfoto,thumb FROM imagen WHERE idfoto = ".$_GET["idfoto"].";";
$operacion =mysql_query( $query, $conexion);

while( ($datos =mysql_fetch_row( $operacion) )<>NULL) { // No se si sea necesario el while
    header("Content-Type: image/jpeg");
    echo $datos[1];
}

mysql_close( $conexion );
?>


2º Script
Código: Seleccionar todo
<?php
include "datos2.php";
$conexion = mysql_connect( "127.0.0.1", "root", "menvel" );
mysql_select_db("tipscuernavaca");

$query = "select idfoto from imagen;";
$operacion =mysql_query( $query, $conexion);

while( ($datos =mysql_fetch_row( $operacion) )<>NULL)
{
   echo '<img src="script2.php?idfoto="'.$datos[0].'" /><br />';
   // el <br /> es salto de linea, puedes sacarlo si quieres
}

mysql_close( $conexion );
?>


Espero que te sirva!!!
Imagen
Imagen
Programar es jugar a ser Dios!!
Avatar de Usuario
Bestprogramado
Usuario Muy Activo
Usuario Muy Activo
 
Mensajes: 122
Registrado: Mar May 31, 2005 1:44 pm
Ubicación: Buenos Aires

Re: recuperar varia imagen de MySQL y mostrarlas todas

Notapor arcemero el Vie Ago 10, 2007 4:45 am

menvel escribió:Hola!!!

tengo un pequeño problema sobre imagenes almacenadas en MySQL,

tengo este script:

<?php
include "datos2.php";
$conexion = mysql_connect( "127.0.0.1", "root", "menvel" );
mysql_select_db("tipscuernavaca");
$query = "select idfoto,thumb from imagen;";
$operacion =mysql_query( $query, $conexion);

while( ($datos =mysql_fetch_row( $operacion) )<>NULL)
{
header("Content-Type: image/jpeg");
echo $datos[1];
}
mysql_close( $conexion );
?>

me funciona a la perfeccion, el problema es que en la consulta me recupera 10 registros en los cuales existen 10 imagenes que es el campo thumb, pero a la hora de mostrarme los resultados solo me muestra una imagen "YO KIERO QUE ME MUESTRE LAS 10 IMAGENES EN LA MISMA PAGINA WEB", no se como hacerle help me please!!!!!!!





HOLA BRO.

Bueno si quieres solucionar tu problemita es super facil y si se puede en un solo archivo te recomendaria que si creas paginas con codigo complejo separes los archivos y utilices require(este es para obligar a meter el archivo) o include(este lo puedes hacer opcional)

pero para resolver tu problema enlugar de usar row es mejor que utilices array ya que row solo puedes utilizar valores numericos

si utilizas array puedes usar nombres, ademas de que devuelve un valor true cada que encuentra una nueva entrada, cuando termina de encontrar entradas simplemente debuelve un false que proboca el termino del bucle while, en simples palabras si tienes en tu base de datos 10 imagenes te muestra 10 imagenes en una pag si tienes 20 te muestra 20 etc... tambien puedes limitar el numero de resultados provocando un false intencional en el bucle while con == , !=, <,>, etc...

Espero que me hayas entendido te dejo arreglado el script saludos chau.

<?php
include "datos2.php";
$conexion = mysql_connect( "127.0.0.1", "root", "menvel" );
mysql_select_db("tipscuernavaca");
$query = "select idfoto,thumb from imagen;";
$operacion =mysql_query( $query, $conexion);

//aqui cambie mysql_fetch_row por mysql_fetch_array
/*para solicitar datos no tienes que incluir forzosamente el NULL ya que podria ser una limitante mejor configura el id como numerico y autoincrementable*/
/*elimine el NULL no es necesario ademas era el que provocaba que terminara tu bucle y solo vieras una imagen*/

while( ($datos =mysql_fetch_array( $operacion) )

{
header("Content-Type: image/jpeg");

/*cambio $datos[1] por $datos[thumb] la opcion que te pongo es en donde el bucle va a continuar mientras halla thumb diferente*/

echo $datos[thumb];
}


/* no es necesario que cierres la conexion ya que la forma en que la abriste se cierra automaticamente al enviar la pagina html*/
mysql_close( $conexion );
?>
arcemero
Novato
Novato
 
Mensajes: 1
Registrado: Vie Ago 10, 2007 4:08 am


Volver a PHP

¿Quién está conectado?

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