Foros del Web » Programando para Internet » PHP »

Mostrar imagenm

Estas en el tema de Mostrar imagenm en el foro de PHP en Foros del Web. Tengo una imagen en la BD metida en modo binario. Como la saco de la misma y la muestro con los tags <img src=>. He ...
  #1 (permalink)  
Antiguo 02/03/2004, 00:29
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Mostrar imagenm

Tengo una imagen en la BD metida en modo binario. Como la saco de la misma y la muestro con los tags <img src=>. He probado con esto pero nada:
Código PHP:
 conectaserver("10.7.3.1","root","","marxismo","mysql");
 
$consulta mysql_query("SELECT * FROM noticias ORDER BY importance DESC LIMIT 4 ");
$datos mysql_result($consulta,0,"imagen");
$tipo mysql_result($consulta,0,"imagentipo");
header("content-type: $tipo");
while (
$resmostrar mysql_fetch_array($consulta)){
 if (
$resmostrar['imagen'] == NULL){
  echo 
"<img src=img/nodisponible.gif alt='Imagen no disponible' border=0 align=absmiddle>";
 }else{
 echo 
"<img src='".$datos."' alt='".$resmostrar['altimage']."'  border=0 align=absmiddle>";

incluso dentro de esa consulta me devuelve una donde el campo imagen esta vacio y no me la pone cuando debia hacerlo. ahora si cambio esta linea:
Código PHP:
 if ($resmostrar['imagen'] == NULL
por esta otra
Código PHP:
 if ($datos == NULL){ 
entonces me ejecuta la primera accion y me pone todas las imagenes como nulas.

Me ayudan ??
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 02/03/2004, 02:50
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Revisa este tutorial de Cluster: http://www.forosdelweb.com/showthrea...hreadid=127775

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 02/03/2004, 11:59
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Sip Josemi

Josemi en ese tutorial me base para tratar de hacer lo que quiero. Lo de las imagenes en la BD, los thumbnails todo eso me funciona perfectamente ahora la cosa es que no se como sacar las imagenes de forma normal y he probado con ver.php pero sin id y nada. No se en realidad que voy a hacer. Se me caen los pelos.

Salu2
__________________
Ing. Reynier Pérez Mira
  #4 (permalink)  
Antiguo 02/03/2004, 12:45
 
Fecha de Ingreso: diciembre-2003
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Hola, el problema es que estas mezclando la imagen con el html, la imagen es un archivo y el html es otro, con el codigo anterior estas metiendo la imagen dentro del html

Lo que tienes que hacer es un script que SOLO manden el header con el tipo de imagen y los datos binarios. Y en el otro que contiene el html llamar a ese archivo con una id que seria la imagen que quieres mostrar.
El primero quedaria algo asi:
Código PHP:
conectaserver("10.7.3.1","root","","marxismo","mysql");
$consulta mysql_query("SELECT * FROM imagen, imagentipo WHERE id=$id ");

$datos mysql_result($consulta,0,"imagen");

$tipo mysql_result($consulta,0,"imagentipo");

header("content-type: $tipo");

echo 
$datos
no lo he probado, pero esa es la idea

y en el otro (el que contiene el html llamas a este script como si pusieras una imagen, es decir:
Código PHP:
<img src="imagen.php?id=5"  border=0 align=absmiddle
Esta es la idea basica, por supuesto que el id=5 lo puedes cambiar y hacer dinamico para llamar a cualquier imagen de la bdd, el alt de la imagen lo tendrias que obtener con otra consulta desde el script del html

Saludos
  #5 (permalink)  
Antiguo 02/03/2004, 13:52
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
El problema es ...

El problema es que mi consulta no selecciona según el ID, sino de esta forma:
SELECT * FROM noticias ORDER BY importancia DESC LIMIT 3

me comprendes como lo harias ahora. ?
Salu2
__________________
Ing. Reynier Pérez Mira
  #6 (permalink)  
Antiguo 02/03/2004, 13:58
 
Fecha de Ingreso: diciembre-2003
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Hola, lo que pasa es no puedes mandar 3 imagenes al mismo tiempo. Lo que tienes que hacer es primero es hacer esa consulta, y luego de que obtienes las 3 primeras noticias utilizas el id (clave primaria) para llamar a las imagenes.

Saludos

Última edición por Ktion; 02/03/2004 a las 14:01
  #7 (permalink)  
Antiguo 02/03/2004, 14:13
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero, .. de esa consulta te va a arrojar 3 registros de con sus respectivos ID's .. eso es lo que tienes que usar en tu bucle que obtienes tus X registros.

El "ver.php" dejalo como está originalmente y donde está ..

Haz tu consulta SQL pertinente para ver tus registros e imagen asociada en un script -aparte-. Si usas cabeceras header() del timpo "content-type" le estás diciendo al navegador que el dato que vas a enviar es de tal tipo .. en ese caso una imagen y así deberá interpretarla .. Eso lo hace HTML con su tag HTML de imagen si vas incrustar una imagen en HTML:

Código PHP:
<?
// conecta a tu BD .. etc
$consulta mysql_query("SELECT * FROM noticias ORDER BY importance DESC LIMIT 4 ");
while (
$registro=mysql_fetch_array($consulta)){
echo 
"<img src="ver.php?id=".registro['id']."'  border=0 align=absmiddle>";
echo "Otros campos ".$registro['
nose];
}
Esto es justamente lo que hace uno de los ejemplos del tutorial mencionado (el que lista toda la BD) con sus datos e imagenes.

Solo que si te fijas .. la consulta SQL de ejemplo lo hace sobre toda la Base de datos . .pero la técnica es la misma "llamar" al ver.php y pasarle el "ID" del registro que quieres mostrar la imagen del campo asociado.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 02/03/2004, 22:38
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Cluster ...

Eso lo entendi lo que no entiendo es si mi consulta devuelve las 4 primeras noticias de la BD ordenadas por importancia entonces como he de saber el ID de esa noticia para posteriormente pasarselo a ver.php como parametro ??

Salu2
__________________
Ing. Reynier Pérez Mira
  #9 (permalink)  
Antiguo 02/03/2004, 23:15
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Gracias a todos

Gracias a todos ya di con el problema ahora tengo otra pequeña dudita como puedo picarle un pedazo a la imagen mia. Por ejemplo quitarle 10 px de la derecha .??
__________________
Ing. Reynier Pérez Mira
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 12:07.