Foros del Web » Programando para Internet » PHP »

problema al cargar una imagen

Estas en el tema de problema al cargar una imagen en el foro de PHP en Foros del Web. tengo el siguiente script Código PHP: <?php mysql_connect ( 'localhost' , 'root' , '' )or die ( 'Ha fallado la conexión: ' . mysql_error ()); mysql_select_db ( 'proyecto' )or die ( 'Error al seleccionar la Base de Datos: ' . ...
  #1 (permalink)  
Antiguo 22/07/2012, 15:31
 
Fecha de Ingreso: julio-2012
Ubicación: en mi casa
Mensajes: 37
Antigüedad: 11 años, 9 meses
Puntos: 0
Pregunta problema al cargar una imagen

tengo el siguiente script
Código PHP:
<?php
mysql_connect
('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('proyecto')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
/*  consulta 1 */
$consulta "SELECT * from alimento;";
$resultado mysql_query($consulta) or die("La consulta fall&oacute;: " .
mysql_error());
/* Impresion de resultados en HTML */
echo "<table border = 1 >\n";
echo 
"<tr><hr>alimento</hr></tr>\n";
while (
$linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
echo 
"\t<tr>\n";
foreach (
$linea as $valor_col) {
echo 
"\t\t<td>$valor_col</td>\n";
}
echo 
"\t</tr>\n";
}
mysql_free_result($resultado);
/*imagen*/
$consulta "SELECT imagen FROM alimento;";
$resultado mysql_query($consulta) or die("La consulta fall&oacute;: " .
mysql_error());
echo 
"<table border = 1 >\n";
echo 
"\t<tr>\n";
echo 
'\t\t<td><img src="$resultado"></td>\n';
echo 
"\t</tr>\n";
/* Liberar conjunto de resultados */
mysql_free_result($resultado);
mysql_close();
?>
en mi tabla alimento tengo un campo llamado imagen, en el cual se almacena la direccion de la misma y asi llamarla en un img.
mi idea como pueden ver es hacer la consulta para encontrar la direccion de mi imagen y luego dentro del src del img poner el query o el resultado de la consulta.
el problema es q cuando meto ya sea el query o el resultado no sale la imagen... necesito una segunda opinion porq no veo ningun problema en el codigo.
gracias por su ayuda
  #2 (permalink)  
Antiguo 22/07/2012, 15:41
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema al cargar una imagen

La variable $resultado es el resource_id de la consulta, debe de utilizar alguna de las funciones fetch para extraer la data
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 22/07/2012, 15:43
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: problema al cargar una imagen

Código PHP:
Ver original
  1. $consulta = "SELECT imagen FROM alimento;";
porque le pones ;?

Código PHP:
Ver original
  1. $consulta = "SELECT imagen FROM alimento";
dejalo así,


Código PHP:
Ver original
  1. $conexion = mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
  2. $resultado = mysql_query($consulta,$conexion);
ahi te falta la variable conexion

Código PHP:
Ver original
  1. echo "<table border = 1 >\n";
  2. echo "\t<tr>\n";
  3. echo '\t\t<td><img src="$resultado"></td>\n';
  4. echo "\t</tr>\n";

y acá nunca reccores el resultado de la consulta, se supone que $resultado es un array con todas las rutas de las imagenes guardadas en tu tabla.
por lo tanto:
Código PHP:
Ver original
  1. echo "<table border = 1 >\n";
  2. while($fila = mysql_fetch_assoc($resultado){
  3. echo "\t<tr>\n";
  4. echo '\t\t<td><img src="$fila[imagen]"></td>\n';
  5. echo "\t</tr>\n";
  6. }
  7. echo </table> //TE FALTA CERRAR LA TABLA

Última edición por rodrigo791; 22/07/2012 a las 16:02
  #4 (permalink)  
Antiguo 22/07/2012, 16:05
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema al cargar una imagen

@rodrigo791 revise bien lo que esta haciendo, no se puede hacer un ciclo con mysql_num_rows cómo condición de parada, nunca finalizará, además y como indique no se esta extrayendo valores de la consulta, $resultado no es un array, es el resource_id, más atención con lo que se responde!
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 22/07/2012, 16:20
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: problema al cargar una imagen

Cita:
Iniciado por maycolalvarez Ver Mensaje
@rodrigo791 revise bien lo que esta haciendo, no se puede hacer un ciclo con mysql_num_rows cómo condición de parada, nunca finalizará, además y como indique no se esta extrayendo valores de la consulta, $resultado no es un array, es el resource_id, más atención con lo que se responde!
hola maycol si mande cualquiera me quede pensando despues de lo rapido que le respondi ni pence jajaja, tenia que poner una de las funciones fetch como comentaste antes, gracias igual por la aclaración jaja
  #6 (permalink)  
Antiguo 22/07/2012, 16:27
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema al cargar una imagen

Ok, te entiendo, aveces por ser muy entusiasta se te nubla la mente, sigue así pero revisa con calma a mi me ha pasado antes

Lamentó decirte que se te escapó lo de colocar variables PHP dentro de cadenas con comillas simples!, recueda que sólo se analizan en comillas dobles!:

Código PHP:
Ver original
  1. echo '<td><img src="' . $fila[imagen] . '"></td>';

Además los tabs, salto de línea y retorno de carro son ignorados por HTML, aparte de que PHP sólo los reconoce dentro de cadenas con comillas dobles
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Última edición por maycolalvarez; 22/07/2012 a las 16:35

Etiquetas: html, mysql, tabla
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 02:23.