il faut écrire
Code : Tout sélectionner
14-s.jpg|13-s.jpg|12-s.jpg|11-s.jpg|10-s.jpgCode : Tout sélectionner
14-s.jpg|13-s.jpg|12-s.jpg|11-s.jpg|10-s.jpg|Code : Tout sélectionner
14-s.jpg|13-s.jpg|12-s.jpg|11-s.jpg|10-s.jpgCode : Tout sélectionner
14-s.jpg|13-s.jpg|12-s.jpg|11-s.jpg|10-s.jpg|<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="fr" />
<link rel="stylesheet" href="css/design.css" type="text/css" media="screen" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="js/gallery.js" type="text/javascript"></script>
<title>TEST</title>
</head>
<body>
<?php
//On initialise la connexion à la bdd
try
{
$db_host = "localhost"; //Lieu où est héberger la BDD
$db_name = "galeriebdd"; //Nom de la BDD
$db_login = "root"; //Login de connexion à la BDD
$db_mdp = "root"; //Mot de passe de connexion à la BDD
$bdd=new PDO("mysql:host=$db_host;dbname=$db_name",$db_login,$db_mdp);
}
catch(Exception $e)
{
exit("<h1>Erreur de connexion à la BDD SQL</h1></body></html>");
}
/* mise en place du nombre d'affichage de galeries par page */
$nb_affiche = 1; //Nombre de galeries que l'on veut par page
//On va afficher la/les galeries selon la page où l'on ce trouve
if (isset($_GET['page']) && is_numeric($_GET['page']) && $_GET['page']>0)
{
//$start nous sert pour savoir où commence l'affichage des galeries selon la page où l'on est
$start = $_GET['page'] * $nb_affiche - $nb_affiche;
//On récupère la page sur laquelle on est, nécessaire lors de la pagination
$page = $_GET['page'];
}
else
{
$start = 0;
$page = 1;
}
/* ========================================================= */
//On prepare la requete SQL
$req = $bdd->prepare("SELECT * FROM galerie ORDER BY id LIMIT :start,:nb_affiche");
$req->bindValue(':start',$start,PDO::PARAM_INT);
$req->bindValue(':nb_affiche',$nb_affiche,PDO::PARAM_INT);
$req->execute();
while ($donnees = $req->fetch())
{
?>
<h1><?php echo $donnees['titre_galerie']; ?></h1>
<ul id="thumbs">
<?php
/*On affiche toutes les vignettes pour cette galerie
On crée un tableau des vignettes grâce au séparateur choisi */
$tableau_vignettes = explode("|",trim($donnees['vignettes']));
for ($i = 0; $i < count($tableau_vignettes); $i++)
{
//On affiche chaque vignette dans une balise li avec son lien permettant de l'afficher au dessus en grand format
?>
<li>
<a href="galerie/<?php echo $tableau_vignettes[$i]; ?>">
<img src="galerie/<?php echo $tableau_vignettes[$i]; ?>" alt="" />
</a>
</li>
<?php
}
?>
</ul>
<p>
<?php echo $donnees['commentaire']; ?>
</p>
<?php
}
$req->closeCursor();
//On met en place la pagination
$req = $bdd->prepare("SELECT COUNT(*) AS nb_galerie FROM galerie");
$req->execute();
$nb_galerie = $req->fetch();
$nb_galerie = $nb_galerie['nb_galerie']; //On associe le nombre de galeries
$nb_pages = ceil($nb_galerie / $nb_affiche); //On compte le nombre de pages par rapport au nombre de galeries que l'on veut par page
?>
<p class="pagination">[ Page :
<?php
for ($i=1;$i<=$nb_pages;$i++)
{
if ($i == $page )
{
?>
<span><?php echo $i; ?></span> -
<?php
}
else
{
?>
<a href="?page=<?php echo $i; ?>"><?php echo $i; ?></a> -
<?php
}
}
?>
]</p>
<?php
$req->closeCursor();
?>
</body>
</html>
Comme tu peux le voir le fichier javascript est situé dans le dossier js/ , à toi de voir où tu veux qu'il soit, voici le fichier gallery.js :
Code : Tout sélectionner
jQuery(function($){
var settings = {
thumbListId: "thumbs",
imgViewerId: "viewer",
activeClass: "active",
activeTitle: "Photo en cours de visualisation",
loaderTitle: "Chargement en cours",
loaderImage: "images/loader.gif"
};
var thumbLinks = $("#"+settings.thumbListId).find("a"),
firstThumbLink = thumbLinks.eq(0),
highlight = function(elt){
thumbLinks.removeClass(settings.activeClass).removeAttr("title");
elt.addClass(settings.activeClass).attr("title",settings.activeTitle);
},
loader = $(document.createElement("img")).attr({
alt: settings.loaderTitle,
title: settings.loaderTitle,
src: settings.loaderImage
});
highlight(firstThumbLink);
$("#"+settings.thumbListId).before(
$(document.createElement("p"))
.attr("id",settings.imgViewerId)
.append(
$(document.createElement("img")).attr({
alt: "",
src: firstThumbLink.attr("href")
})
)
);
var imgViewer = $("#"+settings.imgViewerId),
bigPic = imgViewer.children("img");
thumbLinks
.click(function(e){
e.preventDefault();
var $this = $(this),
target = $this.attr("href");
if (bigPic.attr("src") == target) return;
highlight($this);
imgViewer.html(loader);
bigPic
.load(function(){
imgViewer.html($(this).fadeIn(250));
})
.attr("src",target);
});
});
Code : Tout sélectionner
jQuery(function($){
// définition du plugin
$.fn.jquery_gallery = function(options) {
// définition des paramètres par défaut
var defaults = {
activeClass: "active",
activeTitle: "Photo en cours de visualisation",
loaderTitle: "Chargement en cours",
loaderImage: "img/ajax-loader.gif"
};
// mélange des paramètres fournis et des paramètres par défaut
var settings = $.extend(defaults, options);
function initGallery(ul)
{
var thumbLinks = $(this).find("a"),
firstThumbLink = thumbLinks.eq(0),
highlight = function(elt){
thumbLinks.removeClass(settings.activeClass).removeAttr("title");
elt.addClass(settings.activeClass).attr("title",settings.activeTitle);
},
loader = $(document.createElement("img")).attr({
alt: settings.loaderTitle,
title: settings.loaderTitle,
src: settings.loaderImage
});
highlight(firstThumbLink);
var imgViewer = $(document.createElement("p")).attr("class","viewer")
.append(
$(document.createElement("img")).attr({
alt: "",
src: firstThumbLink.attr("href")
})
);
$(this).after(imgViewer);
var bigPic = imgViewer.children("img");
thumbLinks
.click(function(e){
e.preventDefault();
var $this = $(this),
target = $this.attr("href");
if (bigPic.attr("src") == target) return;
highlight($this);
imgViewer.html(loader);
bigPic
.load(function(){
imgViewer.html($(this).fadeIn(250));
})
.attr("src",target);
});
}
$(this).each(initGallery);
// interface fluide
return $(this);
};
// utilisation du plugin
$(document).ready(function() {
$(".thumbs").jquery_gallery({
activeClass: "ssg_active",
activeTitle: "photo en cours de visualisation",
loaderTitle: "chargement en cours",
loaderImage: "img/ajax-loader.gif"
});
});
});