Foros del Web » Programando para Internet » PHP »

problema con php y mysql

Estas en el tema de problema con php y mysql en el foro de PHP en Foros del Web. Hola saludos foreros tengo un pequeño problema, no puedo visualizar la imagenes de una base datos, si las guardar en la misma pero no se ...
  #1 (permalink)  
Antiguo 30/09/2010, 01:37
 
Fecha de Ingreso: septiembre-2010
Ubicación: vargas
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
problema con php y mysql

Hola saludos foreros tengo un pequeño problema, no puedo visualizar la imagenes de una base datos, si las guardar en la misma pero no se que tengo malo en realidad aqui les dejo el codigo para ver si me pueden ayudar

<?php
$id = intval ($_GET['id']);
if(isset $_GET['id']) {

// you may have to modify login information for your database server:
$conexion=mysql_connect("localhost","usuario","pas s") or die ("no se ha podido conectar a la BD");

mysql_select_db("subir_archivo") or die ("no se ha podido seleccionar la BD");

// imaginamos que el parámetro "id" nos llega en la URL (p. ej. imagen.php?id=5).
$sql = "SELECT * FROM archivos WHERE id='$id'";
$res = mysql_query ($sql);
if ( $res AND mysql_num_rows($res)>0 ){ // se ha encontrado la imagen
$datos = mysql_fetch_array ($res);

// Indicamos al navegador el tipo de imagen que le vamos a enviar
header ('Content-type: ' . $datos['tipo']);

// Enviamos los datos binarios (la imagen)
echo base64_decode($datos['archivo_binario']);
}
else
echo "Error al ejecutar la consulta ($sql)\n";
?>

esta es la parte que se supone me deberia mostrar las imagenes.
Gracias de antemano.
  #2 (permalink)  
Antiguo 30/09/2010, 01:56
 
Fecha de Ingreso: febrero-2010
Mensajes: 52
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: problema con php y mysql

Cita:
Iniciado por cyrus_black Ver Mensaje
Hola saludos foreros tengo un pequeño problema, no puedo visualizar la imagenes de una base datos, si las guardar en la misma pero no se que tengo malo en realidad aqui les dejo el codigo para ver si me pueden ayudar

<?php
$id = intval ($_GET['id']);
if(isset $_GET['id']) {

// you may have to modify login information for your database server:
$conexion=mysql_connect("localhost","usuario","pas s") or die ("no se ha podido conectar a la BD");

mysql_select_db("subir_archivo") or die ("no se ha podido seleccionar la BD");

// imaginamos que el parámetro "id" nos llega en la URL (p. ej. imagen.php?id=5).
$sql = "SELECT * FROM archivos WHERE id='$id'";
$res = mysql_query ($sql);
if ( $res AND mysql_num_rows($res)>0 ){ // se ha encontrado la imagen
$datos = mysql_fetch_array ($res);

// Indicamos al navegador el tipo de imagen que le vamos a enviar
header ('Content-type: ' . $datos['tipo']);

// Enviamos los datos binarios (la imagen)
echo base64_decode($datos['archivo_binario']);
}
else
echo "Error al ejecutar la consulta ($sql)\n";
?>

esta es la parte que se supone me deberia mostrar las imagenes.
Gracias de antemano.

Hola cyrus_black;

¿El campo en el que guardas la imagen, que tipo de campo es? - Deberia ser un LONGBLOB (al menos lo que yo utilizo)
¿Has comprobado que la imagen esta en la BBDD?
¿La carpeta tiene permisos de lectura? CHMOD 777

Yo estoy con un tema parecido, yo te recomiendo que en vez de guardar la imagen en la BBDD, la guardes en un directorio, porque con el tiempo la BBDD 'engorda' y luego cuando 'supongo' hagas la copia de seguridad de la BBDD, te las vas a ver y desear.

Un saludo.
  #3 (permalink)  
Antiguo 30/09/2010, 22:56
 
Fecha de Ingreso: septiembre-2010
Ubicación: vargas
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: problema con php y mysql

¿El campo en el que guardas la imagen, que tipo de campo es? - Deberia ser un LONGBLOB (al menos lo que yo utilizo)
¿Has comprobado que la imagen esta en la BBDD?
¿La carpeta tiene permisos de lectura? CHMOD 777


Hola chesterfield001, el campo de la base de datos en LONGBLOB, la imagen si se sube a la base de datos pero lo ultimo no se como hacerlo :s. Si me puedes ayudar con eso estaria agradecido. Saludos
  #4 (permalink)  
Antiguo 02/10/2010, 09:01
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: problema con php y mysql

Cita:
¿La carpeta tiene permisos de lectura? CHMOD 777
http://php.net/manual/es/function.chmod.php

  #5 (permalink)  
Antiguo 02/10/2010, 09:38
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: problema con php y mysql

Suponiendo que tienes permisos y el campo es tipo blob y lo tienes en tu db yo lo he hecho así:

$sql = "SELECT id_fotoimag, nombre, tipo, archivo, descripcion FROM per_fotoimag WHERE id_persona = $key";
$conn = mysql_query($sql);
?>
<table class="tbl" border="0" cellspacing="1" cellpadding="5" width="100%" >
<?php
$n=1;
while($datos=mysql_fetch_row($conn))
{
// La imagen
$val= $datos[0]; // id
$imagen = $datos[3]; // la imagen propiamente dicha
// El mime type de la imagen
$mime = $datos[2]; // tipo de dato
$nom =$datos[1]; //echo $nom."<br>";
$file = explode("/",$mime);
if ($file[0]=="image")
{
echo "<tr>";
echo "<td class='hb' align='center' width='5%'>Foto/Imagen</td>";
echo "<td class='jr' width='50%' align='center'><img src='data:image/jpeg;base64,".base64_encode($imagen)."' /></td>";

... y ahí sigue pero ahí creo que esto te puede servir para aclarar duda... salidos mi pana

Etiquetas: mysql
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 05:39.