Bonjour,
Je souhaite faire une pagination pour mes annonces. Tout marche bien: l'url, l'affichage etc. Cependant, j'ai dû mal à insérer les variables $debut et $nbre_de_pages en LIMIT dans ma fonction getAnnonces() sans que cela crée des erreurs. Voici le code:

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
 
...
include 'cmdaffichage.php';
 
 
//On récupère le nombre d'enregistrements
$count= "SELECT COUNT(id) AS cpt FROM annonces";
$stmt= $bdd->prepare($count);
$stmt->execute();
$tstmt=$stmt->fetchAll();
 
 
//Pagination
@$page=$_GET["page"];
if(empty($page)) $page=1;
$nbr_elements_par_page=3;
$nbre_de_pages=ceil($tstmt[0]["cpt"]/$nbr_elements_par_page);
$debut=($page-1)*$nbr_elements_par_page;
 
 
 
 
//On récupére les annonces
 $anouncement= afficherAnnonce();
 $villesm= getVilles();
Page cmdaffichage:
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
 
function getAnnnonces(){
  global $bdd;
  $sql = ' SELECT  A.*
                  ,C.nom_'.$sql_lang.' AS CATEGORIE
                  ,V.ville_'.$sql_lang.' AS VILLE
           FROM annonces A
           LEFT JOIN categories C ON C.id = A.id_categorie
           LEFT JOIN villes V ON V.id = A.id_ville
           ORDER BY A.created_date DESC';
  try {
    $req = $bdd->prepare($sql);
    $req->execute();
    $res = $req->fetchAll(PDO::FETCH_ASSOC);
  } catch (Exception $e) {
    echo "Erreur dans la requête " . $sql;
  }
  // le temps des tests pour voir le résultat
  return $res;
}
//...suite
 
function afficherAnnonce(){
 
  $annonces = getAnnnonces();
  $images = getImagesAnnonces();
//...suite
Auriez-vous une idée?