Bonjour,
J'adapte en ce moment une page pour l'affichage d'un nombre limité d'enregistrement.
mais j'ai un problème de syntaxe (je pense) au niveau de la requête de décompte des enregistrements
car ça ne m'affiche pas de message d'erreur, mais par contre ça ne limite rien par page (hum)
Voilà mon code:
Je pense que le problème de syntaxe ou de code se trouve dans la partie exécution de la requête où il y a le décompte des enregistrements par ici:
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 <?php //sélection de la base de données: $db = mysql_select_db( "annan" ) ; //sélection de la page : $page = isset($_GET['page']) ? $_GET['page'] : ''; //requête SQL: $sql = "SELECT * FROM Agence_immobiliere ORDER BY Identifiant" ; //exécution de la requête: $requete = mysql_query( $sql, $cnx ) ; //Préparation du page à page avec limite: $ret = mysql_query($requete); // Variable nombre d'enreg par page $limit=4; if($debut==""){$debut=0;} $debut=$page*$limit; // Compte le nombre de champ $nb_total=mysql_num_rows($requete); // Requete $limite=mysql_query("$requete limit $debut,$limit"); //affichage des données avec limite: $limit_str = "LIMIT ". $page * $limit .",$limit"; $result = mysql_query(" SELECT * FROM Agence_immobiliere WHERE $finrequete ORDER BY identifiant ASC $limit_str"); while( $result = mysql_fetch_object( $requete ) ) { echo( "<div align=\"center\"><table border=1><tr><td border=1>" .$result->Identifiant." </td><td border=1 background-color='red'>".$result->Nom_proprio."-".$result->Nom_commune."-".$result->Type_bien."- ".$result->Type_bien2."-".$result->Nombre_pieces."-".$result->Dimension."-".$result->Dimension_terrain."- ".$result->Fourchette_prix."-".$result->Prix."-".$result->Descriptif."-".$result->Coordonnees_proprio." -".$result->Image1."-".$result->Image2."-".$result->Image3."-".$result->Image4."-".$result->Image5." -".$result->Image6."-".$result->Image7."-".$result->Image8."-".$result->Image9."-".$result->Image10."<a href=\"modification2.php?idAgence=".$result->Identifiant."\">-->modifier</a> </td></tr></table></div>\n" ) ; } // Affiche le page par page avec ses liens if ($page>0) { $precedent=$page-1; echo "<a href=\"$PHP_SELF?page=$precedent\">PRECEDENT</a>"; } $i=0; $j=1; if($nb_total>$limit) { while($i<($nb_total/$limit)) { if($i!=$page){echo "<a href=\"$PHP_SELF?page=$i\">$j</a> ";} else { echo "<b>$j</b>";} $i++;$j++; } } if($debut+$limit<$nb_total) { $suivant=$page+1; echo "<a href=\"$PHP_SELF?page=$suivant\">SUIVANT</a>"; } ?>
j'ai mélangé deux scripts différents pour arriver à ça et il doit y avoir eu une incohérence dans le code au niveau des variables à cause du mélange...mais où?? (je déclare forfait...)
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 //exécution de la requête: $requete = mysql_query( $sql, $cnx ) ; //Préparation du page à page avec limite: $ret = mysql_query($requete); // Variable nombre d'enreg par page $limit=4; if($debut==""){$debut=0;} $debut=$page*$limit; // Compte le nombre de champ $nb_total=mysql_num_rows($requete); // Requete $limite=mysql_query("$requete limit $debut,$limit"); //affichage des données avec limite: $limit_str = "LIMIT ". $page * $limit .",$limit"; $result = mysql_query(" SELECT * FROM Agence_immobiliere WHERE $finrequete ORDER BY identifiant ASC $limit_str"); while( $result = mysql_fetch_object( $requete ) ) { { echo( "<div align=\"center\"><table border=1><tr><td border=1>" .$result->Identifiant." </td><td border=1 background-color='red'>".$result->Nom_proprio."-".$result->Nom_commune."-".$result->Type_bien."-
Merci pour votre aide![]()
Partager