Précédent/Suivant dans une galerie d'images [PHP] - PHP - Programmation
Marsh Posté le 30-05-2009 à 21:51:14
Quand tu enregistres l'image, tu demandes la catégorie et quand tu procèdes à l'enregistrement dans la base tu fais ça :
<?php
$categorie = $_POST['categorie'];
$sql = mysql_query('SELECT * FROM TABASE WHERE cat like "'.$categorie.'%" ORDER BY id DESC LIMIT 0, 1;'); // Tu prends le dernier enregistrement de la catégorie sélectionnée
$data = mysql_fetch_array($sql);
...
?>
Tu "coupes" le $data['cat'] au niveau de la catégorie sélectionnée (ex : C|12). Tu récupéres le 12, tu ajoutes 1 et tu l'envoies comme catégorie
J'espère que tu as compris
Marsh Posté le 31-05-2009 à 11:51:51
Euh... non
D'après ce que j'ai compris, ton astuce est basée sur le même principe que l'id automatiquement générée à chaque enregistrement, donc j'aurai le même problème : si j'ajoute 3 images et que je supprime celle du milieu, il y aura un décalage entre les 2 restantes.
Marsh Posté le 31-05-2009 à 20:20:51
ce que j'ai fait dans une galerie, c'est d'enregistrer la date de publication de l'image.
p.ex., une table comme ceci :
images
______
id
id_cat
date_pub
titre
description
fichier
comme ça tu peux faire une requête ressemblant à ceci (en imaginant que l'image actuelle soit d'ID XXX et de date_pub YYY, dans la catégorie ZZZ) :
Code :
|
et là tu t'en fous d'avoir des trous dans les ID, puisque pour cette même catégorie, tu demandes l'image (LIMIT 1 = 1 seule ligne retournée) dont la date de publication est juste supérieure.
Chez moi la date_pub est un timestamp Unix.
Faudrait vérifier mais à dates égales il te retournera le bon ID suivant.
Marsh Posté le 01-06-2009 à 13:24:27
J'ai un poil simplifié ton idée en allant directement chercher l'id supérieure à celle de l'image actuelle, et ça marche impeccable :
Code :
|
C'était vraiment con comme une blague de maternelle, vu qu'il suffisait d'utiliser le signe ">" pour résoudre tous les problèmes de discontinuité...
En tout cas, merci à tous pour votre aide
Marsh Posté le 30-05-2009 à 18:56:10
Bonsoir,
J'aimerais créer des liens "image précédente" et "image suivante" sur la page qui affiche une image d'une catégorie particulière. Le problème est que mes id sont le plus souvent anarchiques (on peut passer de 163 à 168 dans une même catégorie par exemple), ce qui m'empêche de faire un bête lien vers "id+1" ou "id-1".
Je pense que le plus simple serait d'assigner à chaque image d'une catégorie un numéro afin de créer une suite logique et d'utiliser ce "-1" ou "+1", mais je ne vois pas trop comment faire...
Merci d'avance
Message édité par Brendeldas le 30-05-2009 à 18:56:19
---------------
Plaît-il ?