Bonjour, j'ai pris le temps de chercher pendant de nombreuse heure avant de venir demander la solution ici.
Mon problème : je souhaite utiliser le filtre SQL en PHP ici : http://demo.webslesson.info/codeigni...product_filter / Voici le code : https://www.webslesson.info/2018/12/...agination.html
Aucun problème pour utiliser ce script en local.
Maintenant je souhaite ajouter une fonctionnalité à ce projet, en effet le filtre affiche tous les produits de la base de donnée d'un seul coup. Mais je souhaiterais qu’il n'en affiche que 5-6 sur la page avant de charger la données au défilement de l’utilisateur comme ici : http://demo.webslesson.info/ajax-scroll-pagination/ Voici le code : https://www.webslesson.info/2017/03/...-ajax-php.html .
Car effectivement certain filtre demande d'afficher plusieurs centaine d’élément et ralentisse beaucoup trop la page.
Donc après de nombreuse tentative je n'arrive pas à trouver de solution fonctionnel. Le script affiche toute la données d'un seul coup avec une boucle foreach, voici un extrait :
Merci de votre aide !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 $statement = $connect->prepare($query); $statement->execute(); $result = $statement->fetchAll(); $total_row = $statement->rowCount(); $output = ''; if($total_row > 0) { foreach($result as $row) { $output .= ' <div class="col-sm-4 col-lg-3 col-md-3"> <div style="border:1px solid #ccc; border-radius:5px; padding:16px; margin-bottom:16px; height:450px;"> <img src="image/'. $row['product_image'] .'" alt="" class="img-responsive" > <p align="center"><strong><a href="#">'. $row['product_name'] .'</a></strong></p> <h4 style="text-align:center;" class="text-danger" >'. $row['product_price'] .'</h4> <p>Camera : '. $row['product_camera'].' MP<br /> Brand : '. $row['product_brand'] .' <br /> RAM : '. $row['product_ram'] .' GB<br /> Storage : '. $row['product_storage'] .' GB </p> </div> </div> '; } } else { $output = '<h3>No Data Found</h3>'; } echo $output; }
Partager