Lecture d'enregistrements avec précédent et suivant

Répondre
BigZ[SHN]
le 23/04/2008 à 08:36
BigZ[SHN]
Bonjour,

Je suis toujours dans mon script de galerie photo et j'aimerai le completer.

Comment puis-je faire pour afficher une photo et mette des flèches (<--, -->) pour voir la photo précédente et la photo suivante ?

Merci

BigZ
Keika
le 23/04/2008 à 09:08
Keika
tu ouvres le dossier contenant les photos
tu le lis
tu fait une boucle avec dedans un tableau recueillant le chemin (ou juste le nom, comme tu le sens) de tes photos
tu cherches la position de ta photo actuelle dans le tableau grace a array_search
et tu finis par prendre les valeurs +1 et -1 dans ton tableau par rapport a la position de ton fichier actuel.
Apres tu remarqueras qu'avec ca tu auras un soucis au niveau de la premiere et derniere photo, a toi de mettre les bonnes condition pour que ca roule tout seul (en comptant le nombre d'entrees dans le tableau peut etre...) ;)
Le PHP --> C'est dur !
BigZ[SHN]
le 23/04/2008 à 11:48
BigZ[SHN]
J'aurai peut etre du préciser que mes photos sont stockées dans ma base de donnée (pas les photos, mais les chemin d'accès plutot)

Actuellement j'ai une page qui m'affiche mes galeries de photos et lorsqu'on clique sur l'une d'elles on à toutes les photos qui s'affichent en miniature. Au clique sur l'une des photos elle s'affiche normalement en grand en _blank

J'aimerai afficher la vue de la photo dans le design de mon site avec la possibilité de faire défiler...

Merci
Keika
le 23/04/2008 à 12:03
Keika
et bien tu enleves le target="_blank" ( qui n'est pas valide au test XHTML...) et le fait que ce soit tout en bdd te simplifie les choses. Tu reprends mon precedent message et tu vires tout ce qui se raporte a la lecture de dossier. C'est simple a partir du moment ou tu as tout ce que tu veux dans un tableau.
Le PHP --> C'est dur !
BigZ[SHN]
le 23/04/2008 à 14:34
BigZ[SHN]
Bon j'ai fais comme ca :
<?
$array[] = "a";
$array[] = "b";
$array[] = "c";
$array[] = "d";
$array[] = "e";
$array[] = "f";
$array[] = "g";
$array[] = "h";

if(isset($_GET['i'])) {
$i = $_GET['i'];
} else {
$i = 0;
}

echo $array[$i];
$back = $i-1;
$next = $i+1;
$tot = count($array);


if($back==-1) {
echo '<br><a href="?i='.$next.'">--></a>';
} elseif($next==$tot) {
echo '<br><a href="?i='.$back.'"><--</a>';
} else {
echo '<br><a href="?i='.$back.'"><--</a> | <a href="?i='.$next.'">--></a>';
}
?>
BigZ[SHN]
le 23/04/2008 à 16:00
BigZ[SHN]
ok merci (les array c'est pas encore ma tasse de thé)

Maintenant j'ai réfléchi. Comment intégrer ce "concept" dans ma galerie.

Je pars de ma page miniature, en cliquant sur une de mes miniatures j'appelle une autre page en passant en GET l'ID de la photo... Ensuite sur ma page j'affiche la photo en grand. En plus de cela je dois refaire une requete pour de nouveau prendre toutes les photos de ma galerie pour les mettres dans mon array ??!!??

Y a pas une solution plus simple ?
Répondre
LoadingChargement en cours