Maison > Questions et réponses > le corps du texte
Professeur, pour la partie pagination, j'ai demandé Attention : mysqli::mysqli() : (HY000/1045) : Accès refusé pour l'utilisateur ''@'localhost' (en utilisant le mot de passe : NON) dans E:yifengcoreDb.php à la ligne 19
échec de la connexion : accès refusé pour l'utilisateur ''@'localhost' (en utilisant le mot de passe : NON)
pagination de la fonction statique publique ($table, $where = '', $page = 1, $pagesize = 10, $order = ' '){
$conn = self::db_connect();
$totals = self::totals($table, $where); // Nombre total d'entrées
$totalpage = ceil($totals / $pagesize); // Nombre total de pages
$page = max(1, $page); $sql = " select * from {$table}";
if ($where) {
$sql .= " WHERE ".$where;
}
if ($order) {
$sql .= " ORDER BY " .$order;
}
$sql .= " limit ".$offset.','.$pagesize;
$result = $conn- >query($sql); // Exécuter sql
if ($result->num_rows > ; 0) { // Nombre de données renvoyées
while ($row = $result->fetch_assoc()) { $rows [] = $row; ;free_result(); // Libère la mémoire des résultats
}
$conn->close();
return array(
'taille de la page' =>
Alone882019-04-09 22:14:21
Appelez db_connect deux fois, l'une est directement db_connect, la deuxième fois est totale, je ne sais pas pourquoi le professeur n'a pas fait d'erreur,
Une façon est de réécrire la méthode d'obtention du nombre total dans la méthode de pagination et assignez-le à la variable
/** * @param $table * @param $where * @param $page * @param $num * @param string $order * @return array */ public static function pagination($table, $where, $page, $num, $order=''){ $conn =self::db_connect(); $count=0; $count_sql = "SELECT count(*) as count FROM {$table}"; if($where){ $count_sql .=" WHERE ".self::getwhere($where); } // exit($count_sql); if($count_result = $conn->query($count_sql)){ $row = $count_result->fetch_assoc(); $count = $row['count']; } $total_page = ceil($count/$num);//总页数 $page=max(1,$page); // 处理$page,max(min,max) 返回最大数 $offset = ($page-1)*$num;// 每页的起始数 // 拼接查询的SQL $sql = "SELECT * FROM {$table}"; if($where){ $sql .=' WHERE '.self::getwhere($where); } if($order){ $sql .= " ORDER BY {$order}"; } $sql .=" LIMIT {$offset} , {$num}"; $rows=[]; if($result = $conn->query($sql)){ while($row = $result->fetch_assoc()){ $rows[]=$row; } mysqli_free_result($result); } $conn->close(); return array('total'=>$count,'page'=>$page,'num'=>$num,'total_page'=>$total_page,'lists'=>$rows); }
振远2018-12-25 19:28:19
跟我的一样的问题
Avis : Variable non définie : db dans D:xuexicoredb.php en ligne 18
Avis : Variable non définie : db dans D:xuexicoredb.php en ligne 18
Avis : Variable non définie : db dans D :xuexicoredb.php en ligne 18
Avis : Variable non définie : db dans D:xuexicoredb.php en ligne 18
Attention : mysqli_connect() : (HY000/1045) : Accès refusé pour l'utilisateur ''@'localhost' (en utilisant mot de passe : NON) dans D:xuexicoredb.php en ligne 18
Échec de la connexion : accès refusé pour l'utilisateur ''@'localhost' (en utilisant le mot de passe : NON)