Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1596 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Précédent/Suivant dans une galerie d'images

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Précédent/Suivant dans une galerie d'images

n°1889813
Brendeldas
Posté le 30-05-2009 à 18:56:10  profilanswer
 

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 ?
mood
Publicité
Posté le 30-05-2009 à 18:56:10  profilanswer
 

n°1889837
toughzaa
Posté le 30-05-2009 à 21:51:14  profilanswer
 

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 ;)

n°1889886
Brendeldas
Posté le 31-05-2009 à 11:51:51  profilanswer
 

Euh... non :D
 
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.


---------------
Plaît-il ?
n°1889980
NewsletTux
&lt;Insérez ici votre vie /&gt;
Posté le 31-05-2009 à 20:20:51  profilanswer
 

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 :
  1. $query = sprintf("SELECT id FROM images WHERE (id_cat='%d' AND date_pub > '%d') LIMIT 1;", ZZZ, YYY);
  2. DB-> execute($query); // selon ta façon de faire tes requêtes


 
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.


Message édité par NewsletTux le 31-05-2009 à 20:21:21

---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1890083
Brendeldas
Posté le 01-06-2009 à 13:24:27  profilanswer
 

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 :
  1. $request34 = mysql_query('SELECT id FROM images WHERE manga="' . $manga . '" AND id > '.$id_image.'  LIMIT 1 ');
  2. $data34 = mysql_fetch_array($reponse34);


 
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 :)


---------------
Plaît-il ?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Précédent/Suivant dans une galerie d'images

 

Sujets relatifs
Apache : images non affichées aléatoirement[PHP/ACCESS] [Microsoft][Pilote ODBC Microsoft Access] Impossible de l
[Résolu][PHP] debug de la fonction execLimitation du ombre d'upload avec PHP
[résolu] Lire le contenu de mails d'une BAL avec PHP[PHP-EXT] Alignement de combo horizontal
Modifier texte couleur formulaire en PHPComment créer un système de caddie en PHP
Problème PHP (formulaire e-mail)Besoin d'aide pour un code PHP
Plus de sujets relatifs à : [PHP] Précédent/Suivant dans une galerie d'images


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR