par
azizss » 12 avr. 2018, 16:48
Bonjour tous le monde,
Je rencontre un problème pour crée une pagination.
je comprend pas trop ou cela bloque.
J'affiche des profils avec des informations des utilisateurs quant cela dépasse 30 profils on passe aux suivant avec une requête Mysql en php.
j'affiche bien les 30 premiers dans ma pagination avec le nombre de page que cela donne.
Exemple :
J'a 45 profils, comme j'ai dit j'affiche que 30 profils par page ce qui donne 2 pages (bien sur j'arrondis) pour 45 profils.
Jusque là ça vas.
mais quant je veux passer a la deuxième pages rien ne fonctionne, j'ai tous mes 30 premiers je devrais en avoir 15 profils pour la 2ème pages.
Voilà mon code :
je commence par cela :
Code : Tout sélectionner
<?php
$sql1 = "SELECT COUNT(*) as nb FROM user_reg AS R, user_profile AS P WHERE R.status LIKE 1 AND R.id LIKE P.`user_id`";
$req21 = $bdd->query($sql1);
$data21 = $req21->fetch();
$nb1 = $data21[0];
$nbpage11 = $nb1/30;
echo $nbpage1 = round($nbpage11);
?>
Puis
Code : Tout sélectionner
<script type="text/javascript">
$(document).ready(function() {
$('#pagination-dem').twbsPagination({
totalPages: <?php echo $nbpage1 ?>,
startPage: 1,
visiblePages: 5,
initiateStartPageClick: true,
href: false,
hrefVariable: '{{number}}',
first: 'Première',
prev: 'Précédent',
next: 'Suivant',
last: 'Dernière',
loop: false,
onPageClick: function (event, page) {
$('.page-active').removeClass('page-active');
$('#page'+page).addClass('page-active');
},
paginationClass: 'pagination',
nextClass: 'next',
prevClass: 'prev',
lastClass: 'last',
firstClass: 'first',
pageClass: 'page',
activeClass: 'active',
disabledClass: 'disabled'
});
});
</script>
Après
Code : Tout sélectionner
<div class="tab-content">
<div class="tab-pane active" id="icon-only-tab1">
<div class="sidebar-category sidebar-category-visible">
<?php
for ($K=0; $K <= $nbpage1; $K+=30) {
$pages = '';
echo $pages = "page$K";
?>
<div class="jumbotron page" id="<?php echo $pages ?>">
<div class="category-content no-padding">
<?php
$reponse13 = $bdd->query("SELECT R.status, R.gender, R.id, P.user_id, R.username, P.path FROM
user_reg AS R, user_profile AS P WHERE R.status LIKE 1 AND R.id LIKE P.`user_id` LIMIT $K, 30");
while ($donnees13 = $reponse13->fetch())
{
?>
<?php $path = $donnees13['path']; ?>
<?php $id_user = $donnees13['user_id']; ?>
<ul class="navigation navigation-main navigation-accordion">
<li>
<a href="index.html"><i class=""><img src="<?php if ($path != "") {
echo "./files_photo/$id_user/image_profil/$path";
}else {
echo"./img/default_profile.jpg";
}
?>" class="img-circle img-sm" alt=""> </i>
<span><?php echo $donnees13['username']; ?>  
<span class="label bg-success">
<?php if ($status == "0") {
echo "Déconnecté";
}elseif ($status == "1") {
echo"en ligne";
}elseif ($status == "2") {
echo"en ligne";
}elseif ($status == "3") {
echo"en ligne";
}else{
echo"en ligne";
} ?>
</span>
</span>
</a>
</li>
</ul>
<?php
}
$reponse13->closeCursor();
?>
</div>
</div>
<?php
}
?>
<ul id="pagination-dem" class="pagination-lg pull-right"></ul>
</div>
</div>
Merci de votre aide,
Bonjour tous le monde,
Je rencontre un problème pour crée une pagination.
je comprend pas trop ou cela bloque.
J'affiche des profils avec des informations des utilisateurs quant cela dépasse 30 profils on passe aux suivant avec une requête Mysql en php.
j'affiche bien les 30 premiers dans ma pagination avec le nombre de page que cela donne.
Exemple :
J'a 45 profils, comme j'ai dit j'affiche que 30 profils par page ce qui donne 2 pages (bien sur j'arrondis) pour 45 profils.
Jusque là ça vas.
mais quant je veux passer a la deuxième pages rien ne fonctionne, j'ai tous mes 30 premiers je devrais en avoir 15 profils pour la 2ème pages.
Voilà mon code :
je commence par cela :
[code]
<?php
$sql1 = "SELECT COUNT(*) as nb FROM user_reg AS R, user_profile AS P WHERE R.status LIKE 1 AND R.id LIKE P.`user_id`";
$req21 = $bdd->query($sql1);
$data21 = $req21->fetch();
$nb1 = $data21[0];
$nbpage11 = $nb1/30;
echo $nbpage1 = round($nbpage11);
?>
[/code]
Puis
[code]
<script type="text/javascript">
$(document).ready(function() {
$('#pagination-dem').twbsPagination({
totalPages: <?php echo $nbpage1 ?>,
startPage: 1,
visiblePages: 5,
initiateStartPageClick: true,
href: false,
hrefVariable: '{{number}}',
first: 'Première',
prev: 'Précédent',
next: 'Suivant',
last: 'Dernière',
loop: false,
onPageClick: function (event, page) {
$('.page-active').removeClass('page-active');
$('#page'+page).addClass('page-active');
},
paginationClass: 'pagination',
nextClass: 'next',
prevClass: 'prev',
lastClass: 'last',
firstClass: 'first',
pageClass: 'page',
activeClass: 'active',
disabledClass: 'disabled'
});
});
</script>
[/code]
Après
[code]
<div class="tab-content">
<div class="tab-pane active" id="icon-only-tab1">
<div class="sidebar-category sidebar-category-visible">
<?php
for ($K=0; $K <= $nbpage1; $K+=30) {
$pages = '';
echo $pages = "page$K";
?>
<div class="jumbotron page" id="<?php echo $pages ?>">
<div class="category-content no-padding">
<?php
$reponse13 = $bdd->query("SELECT R.status, R.gender, R.id, P.user_id, R.username, P.path FROM
user_reg AS R, user_profile AS P WHERE R.status LIKE 1 AND R.id LIKE P.`user_id` LIMIT $K, 30");
while ($donnees13 = $reponse13->fetch())
{
?>
<?php $path = $donnees13['path']; ?>
<?php $id_user = $donnees13['user_id']; ?>
<ul class="navigation navigation-main navigation-accordion">
<li>
<a href="index.html"><i class=""><img src="<?php if ($path != "") {
echo "./files_photo/$id_user/image_profil/$path";
}else {
echo"./img/default_profile.jpg";
}
?>" class="img-circle img-sm" alt=""> </i>
<span><?php echo $donnees13['username']; ?>  
<span class="label bg-success">
<?php if ($status == "0") {
echo "Déconnecté";
}elseif ($status == "1") {
echo"en ligne";
}elseif ($status == "2") {
echo"en ligne";
}elseif ($status == "3") {
echo"en ligne";
}else{
echo"en ligne";
} ?>
</span>
</span>
</a>
</li>
</ul>
<?php
}
$reponse13->closeCursor();
?>
</div>
</div>
<?php
}
?>
<ul id="pagination-dem" class="pagination-lg pull-right"></ul>
</div>
</div>
[/code]
Merci de votre aide,