Foros del Web » Programando para Internet » PHP »

Mostrar Imagenes dentro una carpeta y desde la BD

Estas en el tema de Mostrar Imagenes dentro una carpeta y desde la BD en el foro de PHP en Foros del Web. Amigos. Tengo un script en donde se suben imagenes a una base de datos y despues me la muestra en una tabla, estas imagenes se ...
  #1 (permalink)  
Antiguo 16/05/2009, 05:38
 
Fecha de Ingreso: marzo-2009
Mensajes: 20
Antigüedad: 15 años
Puntos: 0
Mostrar Imagenes dentro una carpeta y desde la BD

Amigos.
Tengo un script en donde se suben imagenes a una base de datos y despues me la muestra en una tabla, estas imagenes se guardan en una carpeta del servisor, pero al momento de mostrarlas no me aparecen, pues la base de datos me guarda la ruta.
Como debo correguir este error.


Script de Subida de las Imagenes.

Código PHP:
<?php
    
include("conexion.php");

mysql_connect ($dbhost$dbusername$dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');

if (isset(
$_POST['titulo'])){$titulo $_POST['titulo'];}
if (isset(
$_POST['autor'])){$autor $_POST['autor'];}

$unique time();
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/upload/vehiculos/'.$unique;
$uploadfile1 $uploaddir.$_FILES['im']['name'];
$uploadcheck1 $uploadfile1;

$unique time();
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/upload/vehiculos/'.$unique;
$uploadfile2 $uploaddir.$_FILES['ima']['name'];
$uploadcheck2 $uploadfile2;
    
$unique time();
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/upload/vehiculos/'.$unique;
$uploadfile3 $uploaddir.$_FILES['imagen']['name'];
$uploadcheck3 $uploadfile3;
        
if(empty(
$_FILES['im']['name'])){
$uploadfile1 "";}

if(empty(
$_FILES['ima']['name'])){
$uploadfile2 "";}

if(empty(
$_FILES['imagen']['name'])){
$uploadfile3 "";}

mysql_select_db($dbname) or die('Cannot select database');
   
$update mysql_db_query("$dbname","INSERT INTO imagenes VALUES ('$id', '$titulo', '$autor', '$uploadfile1', '$uploadfile2', '$uploadfile3')") or die(mysql_error());

if (
move_uploaded_file($_FILES['im']['tmp_name'], $uploadfile1))
if (
move_uploaded_file($_FILES['ima']['tmp_name'], $uploadfile2))
if (
move_uploaded_file($_FILES['imagen']['tmp_name'], $uploadfile3))

header("location:tabladatos1.php");
 
?>


Scrip de Respuesta

Código PHP:
<?php
                                            
include("conexion.php");

$connection mysql_connect ($dbhost$dbusername$dbuserpass);
$db mysql_select_db($dbname) or die('Cannot select database');

$query "SELECT * FROM imagenes";
$result mysql_query($query) or die("La consulta fallo: " .mysql_error());
                                                                                    
while (
$row mysql_fetch_assoc($result))
{
?>
                                            
<tr>
<td><?php echo $row['titulo']; ?></td>
<td><?php echo $row['autor']; ?></td>
<td>
<a href="<?php echo $row['foto1'] ; ?> " " rel="lightbox[roadtrip]"><img src="<?php echo $row['foto1'] ; ?>" width="35" height="35" alt="" />&nbsp;&nbsp;
<a href="<?php echo $row['foto2'] ; ?> " " rel="lightbox[roadtrip]"><img src="<?php echo $row['foto2'] ; ?>" width="35" height="35" alt="" />&nbsp;&nbsp;
<a href="<?php echo $row['foto3'] ; ?> " " rel="lightbox[roadtrip]"><img src="<?php echo $row['foto3'] ; ?>" width="35" height="35" alt="" /></a>
</td>
</tr> 

<?php
}
mysql_close($connection);
?>
  #2 (permalink)  
Antiguo 16/05/2009, 05:57
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 2 meses
Puntos: 43
De acuerdo Respuesta: Mostrar Imagenes dentro una carpeta y desde la BD

Buenas,

Has verificado como te esta guardando la direccion de las img en la BD, en que carpeta se esta ejecutando el script donde muestras las img?

Necesitamos saber esto para ayudarte

Saludos
  #3 (permalink)  
Antiguo 16/05/2009, 07:42
 
Fecha de Ingreso: marzo-2009
Mensajes: 20
Antigüedad: 15 años
Puntos: 0
Respuesta: Mostrar Imagenes dentro una carpeta y desde la BD

Hola Rodno.

Sobre tus preguntas:

Si, en la base de datos se guarda las imagenes en esta ruta:
C:/EasyPHP 3.0/www/upload/vehiculos/1242435239bt-5 (1).JPG

el archivo del script esta en el ramal principal, es decir:
C:/EasyPHP 3.0/www/tabladatos1.php
  #4 (permalink)  
Antiguo 16/05/2009, 12:11
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 2 meses
Puntos: 43
De acuerdo Respuesta: Mostrar Imagenes dentro una carpeta y desde la BD

Buenas y Disculpa la Demora:

Mira seria mejor que guardaras en la BD la dir de esta forma, ya que es mas seguro y no da errores:

upload/vehiculos/1242435239bt-5 (1).JPG

Y para mostarls
Código PHP:
<a href="<?php echo $row['foto1'] ; ?> "  rel="lightbox[roadtrip]"><img src="<?php echo $row['foto1'] ; ?>" width="35" height="35" alt="" ></a>&nbsp;&nbsp;
Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #5 (permalink)  
Antiguo 16/05/2009, 12:38
 
Fecha de Ingreso: marzo-2009
Mensajes: 20
Antigüedad: 15 años
Puntos: 0
Respuesta: Mostrar Imagenes dentro una carpeta y desde la BD

Rodno.
Eso no podria hacerlo, pues antes de los scrip mensionados hay uno que hace que terceras personas puedan subir las imagenes, a continuacion lo indico:

<h1>BIENVENIDOS A LA SUBIDA DE ARCHIVOS</h1>
<p>
Usted a seleccionado la categoría "VEHICULOS"<br>


Código HTML:
<form method="post" action="guardar1.php" enctype="multipart/form-data">
Titulo: <input type="text" name="titulo" maxlength="100"><br><br>
Autor : <input type="text" name="autor" maxlength="100"><br><br>
Imagen 1: <input type="file" name="im" size="40"><br><br>
Imagen 2: <input type="file" name="ima" size="40"><br><br>
Imagen 3: <input type="file" name="imagen" size="40"><br><br>
<p><input type="submit" name="submit" value="Subir">
</form> 
Te comento ademas que estos script los tengo de otra forma en donde las imagenes se me guardan directamente en el directorio raiz y se me ven perfectas, pero necesito clasificarlas (guardandolas en distintas carpetas) y ademas para tener un orden en la pagina de mi servidor.
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 06:35.