Foros del Web » Programando para Internet » PHP »

Mostrar imagen a partir de ruta en mysql

Estas en el tema de Mostrar imagen a partir de ruta en mysql en el foro de PHP en Foros del Web. Hola bueno escribo esto por que he buscado formas y formas para mostrar una imagen guardada en el servidor cuya ruta esta en mysql, la ...
  #1 (permalink)  
Antiguo 05/08/2011, 14:10
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Mostrar imagen a partir de ruta en mysql

Hola bueno escribo esto por que he buscado formas y formas para mostrar una imagen guardada en el servidor cuya ruta esta en mysql, la ruta la guarda , pero la imagen no la muestra
la ruta se guarda asi :

8 C:/xampp/htdocs/prueba2/img/1312574646img_left.jpg

Adjunto Codigos:
-----------------------------------------------------------------------
formulario.php

<form action="procesar.php" enctype="multipart/form-data" method="post">
<label for="imagen">Imagen:</label>
<input id="imagen" name="imagen" size="30" type="file" />

<input name="submit" type="submit" value="Guardar" />
</form>

--------------------------------------------------------------------------
procesar.php

<?php
$user = "root";
$pass = "";
$bbdd = "base_de_prueba";

$dbh = mysql_connect("localhost", $user, $pass);
$db = mysql_select_db($bbdd);

$unico = time();
$directorio = $_SERVER['DOCUMENT_ROOT'].'/prueba2/img/'.$unico;
$imagen_path = $directorio.$_FILES['imagen']['name'];

move_uploaded_file($_FILES['imagen']['tmp_name'],$imagen_path);
mysql_query("INSERT into TABLAIMAGENES (nombre_archivo) values ('$imagen_path')");

?>

------------------------------------------------------------------------------------

mostrar.php


<?php

mysql_connect("localhost","root","");
mysql_select_db("base_de_prueba");

$sql=mysql_query("select * from tablaimagenes");
$f=mysql_fetch_array($sql);

echo "estas son las imagenes";

echo'<img src="'.$f['nombre_archivo'].'" width="ancho" height="alto"/>';
?>
----------------------------------------------------------------------------------

el problema es que me muestra un cuadrado con la imagen rota... o sea muestra el link quebrado , y solo muestra una sola imagen quebrada , no todas las que tengo , Ayuda porfavor!!! ya que soy nueva en php!!!
  #2 (permalink)  
Antiguo 05/08/2011, 14:21
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar imagen a partir de ruta en mysql

La ruta que almacenas en la BD no corresponde a una URL como lo precisa la etiqueta <img/>, lo que almacenaste es la ruta física del archivo por lo cual no funcionará jamás.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/08/2011, 14:21
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 3 meses
Puntos: 53
Respuesta: Mostrar imagen a partir de ruta en mysql

deberias ver si se estan guardando las imagenes fisicamente , es decir, si la mandas a guardar en tus documentos verifica que ahi este quizas si guarde la ruta pero no la imagen,

y al momento de mostrar las imagenes las guardas en un arreglo
pero no lo recorres

podrias utilizar un

while($f=mysql_fecht_arrya($sql))
{
print $f[0]."<br>"; //// posicion de tu primer parametro a pedir en tu consulta

///o bien

print $f['imagen']."<br>";

}


buen dia
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #4 (permalink)  
Antiguo 05/08/2011, 14:24
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 3 meses
Puntos: 53
Respuesta: Mostrar imagen a partir de ruta en mysql

Cita:
Iniciado por pateketrueke Ver Mensaje
La ruta que almacenas en la BD no corresponde a una URL como lo precisa la etiqueta <img/>, lo que almacenaste es la ruta física del archivo por lo cual no funcionará jamás.
si tambien eso,,,

puedes probar colocando el cursor encima de la imagen rota y abajo izqueirda te dar la ruta que indica, o examina la imagen rotacon boton derecho propiedades
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 05/08/2011, 14:30
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

si estan en la carpeta y en la ruta tambien , pero no las logra mostrar :S
  #6 (permalink)  
Antiguo 05/08/2011, 14:32
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

Cuando la examino con propiedades ( la imagen rotta me tira )

http://localhost/prueba2/1%5B7%5D.jpg
  #7 (permalink)  
Antiguo 05/08/2011, 14:35
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

PIRRUMAN cuando pruebo lo que me dijiste me muestra la ruta fisica de la imagen asi :


C:/xampp/htdocs/prueba2/img/1312520686fuentes.gif
5
C:/xampp/htdocs/img/1312573791pets.png
6
C:/xampp/htdocs/prueba2/img/1312573815pets.png
7
C:/xampp/htdocs/prueba2/img/1312573817pets.png
8
C:/xampp/htdocs/prueba2/img/1312574646img_left.jpg
  #8 (permalink)  
Antiguo 05/08/2011, 14:38
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar imagen a partir de ruta en mysql

Cita:
Iniciado por pateketrueke Ver Mensaje
[...] lo que almacenaste es la ruta física del archivo por lo cual no funcionará [...]
Un hack rápido sería eliminar la carpeta de raíz con str_replace()
Código PHP:
echo str_replace('C:/xampp/htdocs''''C:/xampp/htdocs/prueba2/img/1312574646img_left.jpg');
// => /prueba2/img/1312574646img_left.jpg 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 05/08/2011, 14:40
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

y que tengo que almacenar?
  #10 (permalink)  
Antiguo 05/08/2011, 14:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar imagen a partir de ruta en mysql

Cita:
Iniciado por msx Ver Mensaje
y que tengo que almacenar?
Obviamente la ruta de la imagen, pero sin la carpeta de raíz de tus documentos web, lee el mensaje anterior.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 05/08/2011, 14:48
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

mm ok tratare de entenderte :) pero eso lo realiza para una sola imagen. disculpa que soy nueva en php ... y como lo inserto en el insert?
  #12 (permalink)  
Antiguo 05/08/2011, 14:48
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Mostrar imagen a partir de ruta en mysql

Con todo el respeto que se merece pateketrueke (porque realmente se lo merece), yo estoy completamente en desacuerdo con guardar la RUTA de la imagen...

Por que... ?

Si tienes mil imágenes almacenadas con la ruta en tu base de datos y por alguna razón (Dios no quiera) te toca cambiar la carpeta donde almacenas las imágenes, ya sea el nombre de la carpeta o moverla a otro lugar.... que harás con las mil imágenes que ya están almacenadas ?

Solución... ?

Pues solo guarda el nombre y asunto solucionado.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #13 (permalink)  
Antiguo 05/08/2011, 14:50
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

entonces que? xd guardo el nombre o la ruta? y si guardo el nombre para mostrar la imagen la muestro de la misma forma anterior?
  #14 (permalink)  
Antiguo 05/08/2011, 15:02
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

ya:D lo solucione, el problema ahora es que no me muestra todas las imagenes. solo 1

aca esta el codigo del mostrar :p!


<?php
$conectar = mysql_connect("localhost","root","");
$bd = mysql_select_db("cctw");

$sql=mysql_query("select * from imagenes");
$f=mysql_fetch_array($sql);
echo "estas son las imagenes";

while($f=mysql_fetch_array($sql))
{

echo'<img src="'.$f['url'].'" width="300px" height="300px"/>';
}
?>
  #15 (permalink)  
Antiguo 05/08/2011, 15:10
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

Gracias chicos se pasaron :D ! Tema cerrado?
  #16 (permalink)  
Antiguo 05/08/2011, 15:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar imagen a partir de ruta en mysql

jotaincubus, estoy al 100% de acuerdo contigo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #17 (permalink)  
Antiguo 05/08/2011, 15:11
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Mostrar imagen a partir de ruta en mysql

Te sobra esto:

Código PHP:
Ver original 
  #18 (permalink)  
Antiguo 05/08/2011, 15:13
msx
 
Fecha de Ingreso: julio-2011
Mensajes: 21
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Mostrar imagen a partir de ruta en mysql

Gracias a todos!:D

Etiquetas: imagenes, mysql, ruta, sql, tabla, formulario
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 17:26.