Hola amigos tengo un problemon y no se que sea.
Hize una galeria que esta en verion beta y pues funciona muy bien, bueno eso creo, si quieren ver
http://www.musicinmotion.com.mx/galeria/
Esta funciona perfecto sube y muestra las miniaturas y todo el relajo, pero cuando la intento visualizar en mi localhost o en otra direccion dentro del mismo servidor como por ejemplo
http://www.musicinmotion.com.mx/tratoweb/galeria
subo las imagenes y ps si las sube pero al intentar mostrarla no funciona y es el mismo codigo que utilizo en el ejemplo de la galeria de arriba y no funciona en localhost ni en la direccion que les puse abajo, ya cheque que las direcciones de las imagenes esten bien pero pues no veo algo incorrecto.
Esperoy me puedan ayudar.
Les pongo el codigo que utilizo para mostrar lasimagenes
Este es el archivo upload.php en el cual genero la miniatura y subo la imagen
Código PHP:
<?php
include("configuracion.php");
include("funcion.php");
$nom=$_FILES['fichero']['name'];
$titulo=$_POST["titulo"];
$comentario=$_POST["comentario"];
$ssql = "SELECT * FROM galeria WHERE nombre_foto='$nom'";
$rs=mysql_query($ssql,$conn);
$x=mysql_num_rows($rs);
if (isset($_POST['submit'])) {
if(is_uploaded_file($_FILES['fichero']['tmp_name'])) { // verifica haya sido cargado el archivo
$ruta= "archivos/".$_FILES['fichero']['name']; //ruta de la carpeta destino
If($_FILES['fichero']['type']=="image/pjpeg")
{ // condicion la carga del archivo, segun del tipo que sea etc etc
if($x!=0)
{
header("location:form.php?error=nombre");
}else{
$ruta=str_replace(' ','_',$ruta);
$nom=str_replace(' ','_',$nom);
move_uploaded_file($_FILES['fichero']['tmp_name'], $ruta); //linea <--- 8
$ssql="INSERT INTO galeria(nombre_foto,titulo_foto,comentario,fecha) VALUES ('".$nom."','".$titulo."','".$comentario."',CURDATE())";
mysql_query($ssql,$conn);
echo "<b>Upload exitoso!. Datos:</b><br>";
echo "Nombre: <i><a href=\"archivos/".$nom."\">".$titulo."</a></i><br>";
echo "Comentario: <i>".$comentario."</i><br>";
echo "Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>";
redimencionar($ruta,$nom);
$imagen="archivos/minis/mini_".$nom;
echo "<br><img src=$imagen>";
echo "<br><hr><br>";
}//fin del if para comprobar existencia del nombre
}//fin de if condicion la carga de archivos...
else{
header("location:form.php?error=extencion");
} //fin if is_uploaded_file
} //fin if principal
}
?>
Este es el archivo mostrar.php en este archivo obtengo las direcciones de la base de datos y muestra las miniaturas de las imagenes que fueron generadas
Código PHP:
<?php
include("configuracion.php");
echo "<table align=center>";
$columnes = 4; # Número de columnas (variable)
$ssql = "SELECT * FROM galeria ORDER BY fecha";
$_pagi_sql = $ssql;
include("paginacion.php");
$_pagi_cuantos = 12;
$_pagi_nav_num_enlaces=5;
$_pagi_conteo_alternativo="true";
$result = mysql_query($ssql,$conn);
if (($fila=mysql_num_rows($result))==0) {
echo "<tr><td colspan=$columnes>No hay resultados en la BD.</td></tr> ";
} else {
echo "<tr><td colspan=$columnes>$fila Resultados <br></td></tr>";
}
for ($i=1; $fila= mysql_fetch_object($_pagi_result); $i++) {
$resto = ($i % $columnes); # Número de celda del <tr> en que nos encontramos
if ($resto == 1)
{echo "<tr>";} # Si es la primera celda, abrimos <tr>
?>
<td align="center">
Titulo:<?echo $fila->titulo_foto;?>
<br>
<a href="foto.php?id_foto=<?echo $fila->id_galeria;?>"><img border="0" src="archivos/minis/mini_<?echo $fila->nombre_foto;?>"></a>
<br>
Comentario: <?echo $fila->comentario;?>
<br>
Fecha:
<?
$fecha=$fila->fecha;
$fech=explode("-",$fecha);
echo "$fech[2]-$fech[1]-$fech[0]";
?>
</td>
<?
if ($resto == 0)
{echo "</tr>";} # Si es la última celda, cerramos </tr>
}
if ($resto <> 0) { # Si el resultado no es múltiple de $columnes acabamos de rellenar los huecos
$ajust = $columnes - $resto; # Número de huecos necesarios
for ($j = 0; $j < $ajust; $j++) {echo "<td></td>";}
echo "</tr>"; # Cerramos la última línea </tr>
}
echo "</table>";
//Incluimos la barra de navegación
echo"<p align=center>".$_pagi_navegacion."</p>";
//libero el conjunto de resultados
mysql_free_result($_pagi_result);
?>
Este es el archivo foto.php en el cual mando la id de la foto por metodo get y muestro las fotos
Código PHP:
<body background="../fondo.gif"">
<div align="center">
<?
include("configuracion.php");
$id_foto=$_GET["id_foto"];
$ssql="SELECT * FROM galeria WHERE id_galeria = '$id_foto'";
$resultid=mysql_query($ssql,$conn) or die ("Error al ejecutar la sentencia ssql, mysql dice:".mysql_error());
while($fila=mysql_fetch_object($resultid))
{
echo "<h1>$fila->titulo_foto</h1>";
echo "<br>";
echo "<img src=archivos/$fila->nombre_foto>";
echo "<br>".$fila->comentario;
echo "<br>Fecha:".$fila->fecha;
}
?>
y ese es el archivo funcion.php en el cual creo las miniaturas
Código PHP:
<?
function redimencionar($file,$nombre) {
// Se da por echo la imágen existe y es una imágen JPEG (no se hacen validaciones)
$origen="archivos/".$nombre;
$destino="archivos/minis/mini_".$nombre;
copy($origen,$destino);
$imagen = ImageCreateFromJPEG($file);
$width = imagesx($imagen);
$height = imagesy($imagen);
$nueva_anchura = 150; // Define aquí el ancho requerdo
$nueva_altura = ($nueva_anchura * $height) / $width ;// Para un alto proporcinal (RECOMENDADO) ó ingresa directamente el alto requerido.
if (function_exists("imagecreatetruecolor")) {
$calidad = ImageCreateTrueColor($nueva_anchura, $nueva_altura);
} else $calidad = ImageCreate($nueva_anchura, $nueva_altura);
ImageCopyResized($calidad, $imagen, 0, 0, 0, 0, $nueva_anchura, $nueva_altura, $width, $height);
ImageJPEG($calidad, "archivos/minis/mini_".$nombre, 100);
imagedestroy($imagen);
return true;
// Forma de uso:
// redimencionar(/ruta/archivo.jpg)
}
?>
Espero y me puedan ayudar