Foros del Web » Programando para Internet » PHP »

Como muestro imagen siguiente y anterior en galeria de imagenes?

Estas en el tema de Como muestro imagen siguiente y anterior en galeria de imagenes? en el foro de PHP en Foros del Web. Hola amigos sigo creando mi galeria de imagenes, ya esta funcionando perfectamente, lo que hago ahora mismo es que al pinchar en una de las ...
  #1 (permalink)  
Antiguo 02/06/2009, 09:08
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Pregunta

Hola amigos sigo creando mi galeria de imagenes, ya esta funcionando perfectamente, lo que hago ahora mismo es que al pinchar en una de las imagenes mostradas me la muestre sola y mas grande en otra pagina diferente, lo que quiero hacer ahora es que debajo de la imagen que muestro aparezca la imagen que va antes en la base de datos con un enlace que diga imagen anterior y otra que salga la siguiente imagen de la base de datos y diga imagen siguiente, una cosa asi:

Imagen principal

Imagen Imagen

Enlace->Ir a imagen anterior Enlace->Ir a imagen siguiente

Esto es posible? mi codigo es este:

Código PHP:
<?php
session_start
();

// incluimos el archivo de conexion
include ('../../usuarios/reg/config.php');

$id_pastora=$_GET['id_pastora'];

$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora = '$id_pastora' ";
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());

$rowNot mysql_fetch_array($sqlQueryNot);

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

?>
Mira por fin buscando en google os he podido encontrar un ejemplo: http://www.santurtzialdia.com/module...album=33&pos=4 lo que quiero hacer es como hay en esta pagina que puedes ir pasando a la anterior y la siguiente imagen, ¿Alguien sabe como se hace?

Porfavor alguien me ayuda? no logro encontrar nada al respecto en google

Última edición por GatorV; 02/06/2009 a las 11:31
  #2 (permalink)  
Antiguo 02/06/2009, 13:09
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

No creo que sea lo mas optimo, pero, suponiendo que id_pastora es numerico podrias hacer 2 consultas:

1- Obtener anterior: WHERE id_pastora < $id_pastora LIMIT 1
2- Obtener actual y siguiente: WHERE id_pastora >= $id_pastora LIMIT 2
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 02/06/2009, 13:55
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Como he de hacer eso que dices en mi codigo? me he perdido un poco jejej
  #4 (permalink)  
Antiguo 02/06/2009, 16:38
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Cual es la parte en la que te perdiste? tienes que reemplazar la consulta actual con las dos que te sugeri, verificar los resultados obtenidos y crear el HTMl correspondiente.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 02/06/2009, 18:10
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Que hago esto?

Código PHP:
<?php 
session_start
(); 

// incluimos el archivo de conexion 
include ('../../usuarios/reg/config.php'); 

$id_pastora=$_GET['id_pastora']; 
//Obtener anterior imagen
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < $id_pastora LIMIT 1 "
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error()); 

$rowNot mysql_fetch_array($sqlQueryNot); 
//Obtener actual y siguiente
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= $id_pastora LIMIT 2"
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error()); 

$rowNot2 mysql_fetch_array($sqlQueryNot2);

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>"

?>
Estoy haciendo el tonto o las dos consultas e de hacerlas asi?
  #6 (permalink)  
Antiguo 02/06/2009, 18:32
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Vas bien, solo te recomiendo que verifiques el total de lineas leidas en cada consulta, de forma que sepas si realmente tienes que mostrar anterior y siguiente.

Código php:
Ver original
  1. $anterior = (mysql_num_rows($consulta) > 0) ? mysql_fetch_array($consulta) : false;
  2. if($anterior !== false)
  3.     // Aqui muestras el link a la imagen anterior

Una comprobacion similar seria para siguiente, estoy seguro que puedes aplicarla.
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 03/06/2009, 05:26
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Estoy teniendo un problema, me da este error:

You have an error in your SQL syntax; check the manual that corresponds to your MYSQL server version for the right syntax to use near ' LIMIT 1' at line 1.

El codigo lo llevo asi:

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora'];  
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < $id_pastora LIMIT 1 ";  
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  

$rowNot mysql_fetch_array($sqlQueryNot);  
//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= $id_pastora LIMIT 2";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  

$rowNot2 mysql_fetch_array($sqlQueryNot2);

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";
$anterior = (mysql_num_rows($estructura) > 0) ? mysql_fetch_array($estructura) : false;if($anterior !== false) {
echo 
"Hay mas imagenes por eso sale esto";
}   
// Aqui muestras el link a la imagen anterior
?>

Última edición por rompeguesos; 03/06/2009 a las 07:13
  #8 (permalink)  
Antiguo 03/06/2009, 05:38
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

No me lo tomes a mal, quiero ayudarte, pero de nada sirve darte un codigo que funcione si no lo entiendes, porque despues regresarias a preguntar lo mismo para casos similares.

1- Por favor no copies y pegues nada mas el codigo que te sugiero, analiza, piensa que es lo que hace y donde debe ir.
2- id_pastora es un campo numerico?
3- Piensa bien como debe ser la estructura de tu script antes de programarlo, cual debe ser la logica, por ejemplo:
4- Podrias explicarme que hace cada linea de tu codigo a partir de $id_pastora = $_GET[... hasta $rowNot2 = mysql_fetch... por favor?
__________________
- León, Guanajuato
- GV-Foto
  #9 (permalink)  
Antiguo 03/06/2009, 05:52
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Haber, el id_pastora es numerico si, respecto a lo que hace me parece que es asi:

$estructura selecciona de la base de datos el id y el nombre de la imagen y $sqlquerynot realiza la consulta, &rownot extrae el resultado.

y la otra lo mismo no?
  #10 (permalink)  
Antiguo 03/06/2009, 06:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Ok, supongamos que si, ahora:
1- Me explicas por favor el codigo que te pase y porque lo colocaste hasta el final?
2- Cuantos resultados esperas al realizar la consulta en $estructura2?

Por otra parte, creo que en $_GET['id_pastora'] no estas obteniendo el valor deseado, para comprobarlo, modifica:
Código php:
Ver original
  1. $sqlQueryNot = mysql_query($estructura, $db_link) or die("Error: ($estructura)" . mysql_error());

Y luego pegas aqui el mensaje de error que te da.

Adicionalmente, me sorprende que <?php antes del echo verfoto no te de error, a menos que no estes colocando tu codigo completo.
__________________
- León, Guanajuato
- GV-Foto
  #11 (permalink)  
Antiguo 03/06/2009, 06:42
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Si si el codigo es 100% ese ahora te comento un segundo que lo pruebo

En $estructura2 espero recibir dos resultados no? creo que eso es lo que hace el limit que limite la busqueda a 2 resultados.

Respecto al error que da ahora modificando eso que me dices es este:

Parse error: syntax error, unexpected T_VARIABLE in ................... line 12

La linea 12 es esto:

$rowNot = mysql_fetch_array($sqlQueryNot);

vale el error ya esta solucionado era que me habia saltado un ; ahora dice esto:

Error: (SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < LIMIT 1 )You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1

Nuevo avance, mira he dejado el codigo de este modo:

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora']; 
 
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= '$id_pastora' LIMIT 1 ";  
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  
$rowNot mysql_fetch_array($sqlQueryNot);  

//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= '$id_pastora' LIMIT 2";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  
$rowNot2 mysql_fetch_array($sqlQueryNot2);

$anterior = (mysql_num_rows($estructura) > 0) ? mysql_fetch_array($estructura) : false;

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

if(
$anterior !== false) {
echo 
"anterior";
}   
// Aqui muestras el link a la imagen anterior
?>
Ahora el error que me da creo que es referente a la consulta y es una cosa asi:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ................... line 19

la linea 19 es esta:

$anterior = (mysql_num_rows($estructura) > 0) ? mysql_fetch_array($estructura) : false;

Última edición por GatorV; 03/06/2009 a las 08:09
  #12 (permalink)  
Antiguo 03/06/2009, 08:09
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
porque el mysql_num_rows no mira la variable que esta declarada sino mira el query que se ejecuto, tiene que escribirlo asi

mysql_num_rows($sqlQueryNot)

igual mysql_fetch_array

mysql_fetch_array($sqlQueryNot);

tambien tienes otro problema con el query.

Vamos a suponer que tienes una base de datos que tiene 3 datos si declaro
mysql_fetch_array me va a verificar el primer dato y coloca el cursor ahi luego cuando lo vuelvo a llamar me llama el siguiente dato, y si lo vuelvo a llamar me llama el siguiente

Cada vez que declares mysql_fetch_array avanza el cursor uno más, para volver de nuevo al principio de la tabla tienes que declarar

mysql_data_seek($sqlQueryNot, 0);

Última edición por GatorV; 03/06/2009 a las 09:34
  #13 (permalink)  
Antiguo 03/06/2009, 08:28
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
jejejeje me e perdido completamente con lo que me has dicho jeje, tu primer codigo lo e puesto y me a solucionado el problema.

Ahora referente a lo que me comentas de mysql_data_seek no entiendo eso, ¿Que debo de hacer?

No consigo que se muestre la imagen anterior, ¿Que llevo mal?. mirar el codigo a quedado asi pero no se muestra:

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora']; 
 
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= '$id_pastora' LIMIT 1 ";  
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  
$rowNot mysql_fetch_array($sqlQueryNot);  

//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= '$id_pastora' LIMIT 2";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  
$rowNot2 mysql_fetch_array($sqlQueryNot2);

$anterior = (mysql_num_rows($sqlQueryNot) > 0) ? mysql_fetch_array($sqlQueryNot) : false;

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot2['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

if(
$anterior !== false) {
echo 
"<img src=\"".$rowNot['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" />";
}   
// Aqui muestras el link a la imagen anterior
?>

Última edición por GatorV; 03/06/2009 a las 11:37
  #14 (permalink)  
Antiguo 03/06/2009, 13:22
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Cita:
Error: (SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < LIMIT 1 )You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1
Como lo supuse, $_GET['id_pastora'] esta vacio, por eso es que en la consulta aparece WHERE id_pastora < LIMIT 1 cuando debiera ser WHERE id_pastora < aqui_un_numero LIMIT 1
__________________
- León, Guanajuato
- GV-Foto
  #15 (permalink)  
Antiguo 03/06/2009, 13:26
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

creo que $_GET['id_pastora'] va bien... sino recogiera el id no mostraria la imagen no?
Mira yo tengo la pagina donde se muestran todas las fotos con un enlace de este tipo
Código PHP:
<?php echo "<td><a href=\"verfoto.php?id_pastora=".$row['id_pastora']."\"><img src=\"".$row['imagen_pastora']."\" width=\"120\" height=\"100\" border=\"0\" alt=\"Descripcion\" /></a></td>"?>
y me manda a la pagina esta que es de la que estamos hablando donde me muestra la imagen correspondiente, asi que si estuviera vacio creo yo que no mostraria la imagen no? o que?
  #16 (permalink)  
Antiguo 03/06/2009, 13:36
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Bueno, teniendo esto:
Código php:
Ver original
  1. $id_pastora=$_GET['id_pastora'];
  2.  
  3. //Obtener anterior imagen
  4. $estructura = "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= $id_pastora LIMIT 1";

Si MySQL reporta el siguiente error:
Cita:
Error: (SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < LIMIT 1 )You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 1' at line 1
es porque $id_pastora es nulo, ergo $_GET['id_pastora'] tambien.

Intenta por favor lo siguiente:
Código php:
Ver original
  1. if(isset($_GET['id_pastora']))
  2.     $id_pastora=$_GET['id_pastora'];
  3. else
  4.     die('id_pastora esta vacio');
__________________
- León, Guanajuato
- GV-Foto
  #17 (permalink)  
Antiguo 03/06/2009, 13:43
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

jejeje no sale na, ¿eso es bueno o malo? me sigue mostrando bien la imagen principal.....

Última edición por rompeguesos; 03/06/2009 a las 14:11
  #18 (permalink)  
Antiguo 03/06/2009, 16:06
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Es bastante malo, porque no sabemos en que parte de tu codigo $id_pastora esta perdiendo el valor antes de hacer la consulta y despues lo recupera para obtener la imagen actual.
__________________
- León, Guanajuato
- GV-Foto
  #19 (permalink)  
Antiguo 03/06/2009, 16:35
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Te recomiendo que le des un echo a $id_pastora antes de llegar a la consulta.
Es lo que siempre hago con las variables, las imprimo para ver su valor.

quedaría así más o menos así.

Código PHP:
$id_pastora=$_GET['id_pastora'];  
echo 
"El valor de id_pastora es: ".$id_pastora
Prueba y dime

Ah y en la consulta de determinar el anterior, tienes que al final dar un ORDER BY $id_pastora DESC para que cuando te coja el LIMIT 1 te coja el que está pegado al actual, de lo contrario siempre te coge el 1ro de la tabla.

Sería algo así.
Código PHP:
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= '$id_pastora' ORDER BY  id_pastora DESC LIMIT 1"
Saludos y espero que resuelvas.
  #20 (permalink)  
Antiguo 03/06/2009, 17:06
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
me muestra esto: El valor de id_pastora es: 18 <--- quiere decir que si recibe el valor

Vale hasta el momento parece que todo funciona bien, ahora la duda es como hago para mostrar los enlaces para que vaya a la anterior y a la siguiente?

el codigo lo llevo asi:

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora'];
 
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= '$id_pastora' ORDER BY  id_pastora DESC LIMIT 1";    
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  
$rowNot mysql_fetch_array($sqlQueryNot);  

//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= '$id_pastora' ORDER BY  id_pastora ASC LIMIT 1";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  
$rowNot2 mysql_fetch_array($sqlQueryNot2);

$anterior = (mysql_num_rows($sqlQueryNot) > 0) ? mysql_fetch_array($sqlQueryNot) : false;

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot2['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

if(
$anterior !== false) {
echo 
"<a href=\"verfoto.php?id_pastora=".$rowNot['id_pastora']."\"><img src=\"".$rowNot['imagen_pastora-1']."\" width=\"50\" height=\"30\" border=\"0\" alt=\"Descripcion\" /></a>";


?>

Última edición por GatorV; 03/06/2009 a las 19:41
  #21 (permalink)  
Antiguo 04/06/2009, 05:32
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Solicito de nuevo vuestra ayuda ya que varios intentos sigo sin saber como hacer esto que pretendo, lo que llevo hasta el momento me muestra bien la imagen principal pero mi gran duda es como muestro la anterior y la siguiente?

Gracias a todos.
  #22 (permalink)  
Antiguo 04/06/2009, 07:20
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Hola, tienes un error, entre otras cosas...

Cuando haces la comparación de anterior, el signo de diferente es != (no !==).

Aquí te pongo un código, espero que te resulte.
Dime si te da algún error.

Saludos.

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora'];
 
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora <= '$id_pastora' ORDER BY  id_pastora DESC LIMIT 1";    
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  
$rowNot mysql_fetch_array($sqlQueryNot);  

//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= '$id_pastora' ORDER BY  id_pastora ASC LIMIT 2";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  

//cantidad de record encontrados = 1 no hay siguiente; =2 hay siguiente
$siguiente mysql_num_rows($sqlQueryNot2);

//Aquí me quedo con la imagen actual y paso al siguiente record. Eso lo hace mysql_fetch_array.
$rowNot2 mysql_fetch_array($sqlQueryNot2);

$anterior = (mysql_num_rows($sqlQueryNot) > 0) ? mysql_fetch_array($sqlQueryNot) : false;

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot2['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

//Aquí imprimo link de imagen anterior
if($anterior != false) {
echo 
"<a href=\"verfoto.php?id_pastora=".$rowNot['id_pastora']."\"><img src=\"".$rowNot['imagen_pastora']."\" width=\"50\" height=\"30\" border=\"0\" alt=\"Descripcion\" alt=\"Imagen Anterior\"/></a>";


//Aquí imprimo link de  imagen siguiente
if ($siguiente 1) {
$rowNot2 mysql_fetch_array($sqlQueryNot2);
echo 
"<a href=\"verfoto.php?id_pastora=".$rowNot2['id_pastora']."\"><img src=\"".$rowNot2['imagen_pastora']."\" width=\"50\" height=\"30\" border=\"0\" alt=\"Descripcion\" alt=\"Imagen Siguiente\"/></a>";
}

?>
  #23 (permalink)  
Antiguo 04/06/2009, 07:37
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

ejejejje muchisimas gracias amigo me estas ayudando bastante a progresar, ya muestra la siguiente y voy pinchando y va perfecta pero la anterior no muestra absolutamente nada... que le puede suceder?
  #24 (permalink)  
Antiguo 04/06/2009, 07:59
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Amigo.

La consulta donde buscamos el anterior, la condición es < (no <=). Además creo que no está entrando nunca donde se muestra la anterior. Prueba este código:

Código PHP:
<?php  
session_start
();  

// incluimos el archivo de conexion  
include ('../../usuarios/reg/config.php');  

$id_pastora=$_GET['id_pastora'];
 
//Obtener anterior imagen 
$estructura "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora < '$id_pastora' ORDER BY id_pastora DESC LIMIT 1";    
$sqlQueryNot mysql_query($estructura$db_link) or die(mysql_error());  

//cantidad de records encontrados. si = 1 hay anterior de lo contrario, nohay anterior.
$anterior mysql_num_rows($sqlQueryNot);

//Aquí me quedo con la imagen anterior.
$rowNot mysql_fetch_array($sqlQueryNot);  

//Obtener actual y siguiente 
$estructura2 "SELECT id_pastora, imagen_pastora FROM galeriapastora WHERE id_pastora >= '$id_pastora' ORDER BY  id_pastora ASC LIMIT 2";  
$sqlQueryNot2 mysql_query($estructura2$db_link) or die(mysql_error());  

//cantidad de record encontrados = 1 no hay siguiente; =2 hay siguiente
$siguiente mysql_num_rows($sqlQueryNot2);

//Aquí me quedo con la imagen actual y paso al siguiente record. Eso lo hace mysql_fetch_array.
$rowNot2 mysql_fetch_array($sqlQueryNot2);

echo 
"<div id=\"verfoto\"><img src=\"".$rowNot2['imagen_pastora']."\" border=\"0\" alt=\"Descripcion\" /></div>";

//Aquí imprimo link de imagen anterior
if($anterior 0) {
echo 
"<a href=\"verfoto.php?id_pastora=".$rowNot['id_pastora']."\"><img src=\"".$rowNot['imagen_pastora']."\" width=\"50\" height=\"30\" border=\"0\" alt=\"Descripcion\" alt=\"Imagen Anterior\"/></a>";


//Aquí imprimo link de  imagen siguiente
if ($siguiente 1) {
$rowNot2 mysql_fetch_array($sqlQueryNot2);
echo 
"<a href=\"verfoto.php?id_pastora=".$rowNot2['id_pastora']."\"><img src=\"".$rowNot2['imagen_pastora']."\" width=\"50\" height=\"30\" border=\"0\" alt=\"Descripcion\" alt=\"Imagen Siguiente\"/></a>";
}

?>
  #25 (permalink)  
Antiguo 04/06/2009, 08:07
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

Muchisimas graciasAsh_AM funciona perfectamente, no te puedes hacer una idea de la gran ayuda que me acabas de ofrecer ya que no era capaz de hacerlo.

Un saludo y de veras muchas gracias si alguna vez necesitas algo ya sabes donde estoy
  #26 (permalink)  
Antiguo 04/06/2009, 08:17
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: Como muestro imagen siguiente y anterior en galeria de imagenes?

no hay problemas.

Estamos para ayudarnos.

Ya sabes, si necesitas algo, cuenta conmigo, igual me puedes enviar la duda a un privado , no reviso mucho los topics del foro, mi conexión es algo lenta.

Saludos.
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 04:12.