Σελιδοποίηση στο Codeigniter με παράδειγμα βήμα προς βήμα
Οι βάσεις δεδομένων είναι ζωντανές οντότητες. Μεγαλώνουν όσο περνάει ο καιρός. Κατά το σχεδιασμό εφαρμογών, πρέπει να λάβουμε υπόψη τις πολλές εγγραφές που θα πρέπει να περιηγηθούν οι χρήστες. Η σελιδοποίηση μας επιτρέπει να αναλύουμε τα αποτελέσματά μας σε μικρά διαχειρίσιμα μέρη. Η παρακάτω εικόνα δείχνει ένα παράδειγμα σελιδοποίησης στην αναζήτηση Google.
Σε αυτό το σεμινάριο, θα μάθετε πώς να σελιδοποιείτε τα αποτελέσματα της βάσης δεδομένων στο CodeIgniter χρησιμοποιώντας τη βιβλιοθήκη σελιδοποίησης. Αυτό το σεμινάριο προϋποθέτει ότι είστε εξοικειωμένοι με τα βασικά του CodeIgniter Active Record. Εάν δεν το κάνετε, τότε μπορείτε να διαβάσετε τα προηγούμενα σεμινάρια. Η άλλη υπόθεση είναι ότι έχετε ήδη κατεβάσει το CodeIgniter.
Διαμόρφωση βάσης δεδομένων
Θα ξεκινήσουμε με τη δημιουργία της βάσης δεδομένων και την εισαγωγή ορισμένων εικονικών εγγραφών σε αυτήν. Θα είναι μια βάση δεδομένων ενός πίνακα με 50 εγγραφές.
Εκτελέστε το ακόλουθο σενάριο ενάντια MySQL για να δημιουργήσετε τον πίνακα συντάκτες της βάσης δεδομένων. Εισαγάγετε 50 εικονικές εγγραφές.
CREATE SCHEMA ci_pagination; DROP TABLE IF EXISTS `authors`; CREATE TABLE `authors` ( `id` int(11) NOT NULL AUTO_INCREMENT, `first_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `last_name` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `email` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `birthdate` date NOT NULL, `added` timestamp NOT NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `email` (`email`) ) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (1, 'Brielle', 'O\'Hara', 'alexandre67@example.com', '1974-05-21', '1999-09-17 19:17:28'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (2, 'Flavio', 'Lehner', 'mafalda85@example.net', '1971-10-14', '1998-09-09 00:25:06'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (3, 'Elmira', 'Johns', 'wellington52@example.org', '1983-11-28', '2015-02-07 15:56:43'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (4, 'Elza', 'Mitchell', 'marisol46@example.org', '1989-03-08', '1992-08-21 00:21:39'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (5, 'Viva', 'Greenfelder', 'era94@example.com', '1995-04-17', '2017-04-30 05:55:39'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (6, 'Maxwell', 'VonRueden', 'mcassin@example.net', '1994-07-01', '1996-05-08 23:30:14'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (7, 'Deontae', 'Becker', 'rory.kub@example.org', '1992-02-19', '2017-07-22 11:49:15'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (8, 'Sylvester', 'Christiansen', 'erohan@example.org', '1990-09-03', '2004-05-08 08:15:37'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (9, 'Torrey', 'Strosin', 'adams.luciano@example.net', '1999-10-09', '2009-08-30 21:30:44'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (10, 'Kelli', 'Smitham', 'daniel.catalina@example.com', '2012-11-07', '1986-01-22 20:52:57'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (11, 'Abigale', 'Schuppe', 'andreanne.hayes@example.net', '2018-02-18', '1994-05-07 06:26:36'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (12, 'Letha', 'Gleason', 'eldridge.heaney@example.net', '2009-02-06', '1998-05-25 04:37:54'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (13, 'Sienna', 'Upton', 'monique57@example.org', '2017-08-17', '2009-08-08 19:08:10'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (14, 'Harley', 'Gutkowski', 'breilly@example.net', '1987-11-30', '1998-07-31 11:08:01'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (15, 'Lois', 'Bednar', 'hpouros@example.net', '2002-02-11', '2001-07-26 15:04:16'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (16, 'Gail', 'McDermott', 'reina.kerluke@example.com', '1987-03-30', '2004-12-15 20:38:29'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (17, 'Sydney', 'Strosin', 'dweber@example.net', '1985-04-29', '2010-08-07 08:50:35'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (18, 'Anne', 'Cremin', 'fritz.schmitt@example.com', '1976-02-15', '1980-03-25 05:29:41'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (19, 'Norberto', 'Bergnaum', 'franecki.javon@example.net', '1971-03-11', '1993-03-20 23:36:25'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (20, 'Arvid', 'Johns', 'pschultz@example.org', '2016-01-03', '1995-04-30 17:07:15'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (21, 'Bernita', 'Fay', 'arne96@example.org', '1983-12-26', '1987-02-23 16:55:28'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (22, 'Gonzalo', 'Gorczany', 'velma.huels@example.com', '1987-10-19', '2016-10-18 19:25:46'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (23, 'Jackie', 'Klein', 'gretchen.howe@example.com', '1971-01-20', '2010-11-16 02:58:05'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (24, 'Andrew', 'Kessler', 'collins.faye@example.org', '1984-08-07', '1971-12-15 08:46:42'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (25, 'Claire', 'Hudson', 'madalyn.wunsch@example.org', '1984-12-19', '1991-07-04 14:35:53'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (26, 'Prudence', 'Runte', 'koch.laurie@example.net', '2008-12-27', '1985-09-30 04:57:55'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (27, 'Destinee', 'Romaguera', 'tromp.tiffany@example.com', '1978-11-09', '1997-11-09 19:58:08'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (28, 'Marianna', 'Harvey', 'clovis.schuppe@example.com', '2013-08-28', '1990-08-06 19:29:19'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (29, 'Eloy', 'Lakin', 'wmorissette@example.net', '1989-12-08', '1974-03-16 03:21:16'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (30, 'Rubie', 'McClure', 'haley.louisa@example.net', '1987-09-12', '1998-07-02 10:45:36'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (31, 'Marisa', 'Stracke', 'zachary76@example.org', '1975-05-28', '1975-03-19 00:57:35'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (32, 'Jacey', 'Beatty', 'dahlia.hermann@example.org', '1979-12-17', '1971-01-21 16:50:58'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (33, 'Idella', 'Ruecker', 'elda.reichert@example.com', '2009-09-15', '1996-04-19 22:27:31'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (34, 'Dimitri', 'Bednar', 'freida.parker@example.org', '1998-12-02', '2008-12-30 23:29:57'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (35, 'Elfrieda', 'Smitham', 'padberg.rex@example.org', '2018-07-23', '1972-04-01 07:52:25'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (36, 'Dwight', 'Walter', 'gmosciski@example.org', '2016-08-15', '1994-07-02 11:06:55'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (37, 'Macie', 'Fay', 'uschuppe@example.net', '1976-01-29', '2005-12-13 18:44:46'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (38, 'Lori', 'Kshlerin', 'mhansen@example.net', '1983-04-08', '1986-01-18 16:03:52'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (39, 'Jeffry', 'Paucek', 'alisha35@example.net', '2002-10-02', '2004-03-29 07:06:03'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (40, 'Yvonne', 'Bernhard', 'jaqueline21@example.net', '2017-11-04', '1986-12-15 23:55:23'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (41, 'Ludwig', 'Heathcote', 'marcelino.kirlin@example.org', '1981-02-09', '2000-08-02 20:45:48'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (42, 'Jadyn', 'Wiegand', 'georgianna.swift@example.net', '1982-06-16', '1980-12-05 13:09:37'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (43, 'Ferne', 'Smitham', 'melany22@example.com', '1996-12-17', '1984-11-18 19:26:27'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (44, 'Meta', 'Corkery', 'xharber@example.com', '1972-03-31', '2007-01-20 00:07:31'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (45, 'Toni', 'Wolf', 'wyman.crystal@example.org', '2012-04-15', '1973-06-22 12:14:37'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (46, 'Zack', 'Luettgen', 'deion.konopelski@example.org', '2003-05-29', '2018-11-19 05:03:21'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (47, 'Kameron', 'Dietrich', 'ronaldo.torphy@example.com', '1973-05-20', '1974-09-16 20:27:17'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (48, 'Zetta', 'Lebsack', 'timmothy.vandervort@example.com', '1996-11-04', '2001-03-06 01:33:01'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (49, 'Benny', 'Hane', 'leone.lueilwitz@example.net', '2008-02-02', '2006-01-27 22:12:39'); INSERT INTO `authors` (`id`, `first_name`, `last_name`, `email`, `birthdate`, `added`) VALUES (50, 'Evans', 'Gleason', 'ccummerata@example.org', '1999-09-09', '1990-09-26 17:50:11');
Τώρα που δημιουργήσαμε με επιτυχία τη βάση δεδομένων μας και εισάγαμε εικονικές εγγραφές σε αυτήν, ας διαμορφώσουμε την εφαρμογή CodeIgniter ώστε να επικοινωνεί με τη βάση δεδομένων.
Ανοίξτε το application/config/database.php
Ρυθμίστε τις παραμέτρους σύνδεσης βάσης δεδομένων παρόμοιες με τις ακόλουθες
$db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => 'melody', 'database' => 'ci_pagination', 'dbdriver' => 'mysqli', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE );
ΕΔΩ,
- 'hostname' => 'localhost', ορίζει το όνομα κεντρικού υπολογιστή της βάσης δεδομένων
- 'username' => 'root', καθορίζει το όνομα της βάσης δεδομένων
- 'password' => 'openseseme', ορίζει τον κωδικό πρόσβασης της βάσης δεδομένων
- 'database' => 'ci_pagination', καθορίζει το όνομα της βάσης δεδομένων.
Θα κάνουμε επίσης αυτόματη φόρτωση της βιβλιοθήκης της βάσης δεδομένων όταν ξεκινήσει η εφαρμογή μας. Ας το κάνουμε. Ανοίξτε το application/config/autoload.php
Φορτώστε τη βιβλιοθήκη της βάσης δεδομένων όπως φαίνεται στον παρακάτω κώδικα
$autoload['libraries'] = array('database');
Αυτό είναι για τη διαμόρφωση της βάσης δεδομένων.
Ας δουλέψουμε τώρα στο μοντέλο βάσης δεδομένων για σελιδοποίηση
Μοντέλο βάσης δεδομένων σελιδοποίησης CodeIgniter
Δημιουργήστε ένα νέο μοντέλο Authors_model σε εφαρμογή/μοντέλα
Προσθέστε τον παρακάτω κώδικα
<?php class Authors_model extends CI_Model { protected $table = 'authors'; public function __construct() { parent::__construct(); } public function get_count() { return $this->db->count_all($this->table); } public function get_authors($limit, $start) { $this->db->limit($limit, $start); $query = $this->db->get($this->table); return $query->result(); } }
ΕΔΩ,
- προστατευμένο $table = 'συγγραφείς'; ορίστε μια προστατευμένη μεταβλητή που ορίζει το όνομα του πίνακα βάσης δεδομένων για το μοντέλο
- δημόσια συνάρτηση __construct() {…} καλεί τη μέθοδο γονικού κατασκευαστή
- δημόσια συνάρτηση get_count() {…} επιστρέφει τις συνολικές εγγραφές στον πίνακα της βάσης δεδομένων. Αυτό είναι ανάγκη για λόγους σελιδοποίησης
- η δημόσια συνάρτηση get_authors($limit, $start) {…} ορίζει μια μέθοδο που θα χρησιμοποιηθεί για την ανάκτηση σελιδοποιημένων αποτελεσμάτων από τη βάση δεδομένων. Θα περνάμε στο όριο και στην αφετηρία. Το όριο καθορίζει τον συνολικό αριθμό των εγγραφών που πρέπει να επιστραφούν ενώ η έναρξη ορίζει τον αριθμό των εγγραφών που πρέπει να παραλειφθούν
αυτό είναι για το μοντέλο της βάσης δεδομένων μας. Ας δημιουργήσουμε τώρα τις διαδρομές που θα ανταποκρίνονται στα σελιδοποιημένα μας αποτελέσματα.
Διαδρομές σελιδοποίησης CodeIgniter
Ανοίξτε το αρχείο διαδρομών στο application/config/routes.php
Προσθέστε την ακόλουθη διαδρομή
$route['authors/(:num)'] = 'authors';
ΕΔΩ,
- Ορίζουμε έναν συγγραφέα διαδρομής που δέχεται μια προαιρετική παράμετρο του αριθμού. Η προαιρετική παράμετρος ορίζεται χρησιμοποιώντας τις αγκύλες ανοίγματος και κλεισίματος. Η καθορισμένη διαδρομή καλεί τη μέθοδο ευρετηρίου στον ελεγκτή Συγγραφείς.
Ας προχωρήσουμε τώρα στον ελεγκτή για τα σελιδοποιημένα μας αποτελέσματα
Ελεγκτής σελιδοποίησης CodeIgniter
Δημιουργήστε ένα νέο αρχείο Authors.php στον κατάλογο εφαρμογών/ελεγκτών
Προσθέστε τον παρακάτω κώδικα
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Authors extends CI_Controller { public function __construct() { parent:: __construct(); $this->load->helper('url'); $this->load->model('authors_model'); $this->load->library("pagination"); } public function index() { $config = array(); $config["base_url"] = base_url() . "authors"; $config["total_rows"] = $this->authors_model->get_count(); $config["per_page"] = 10; $config["uri_segment"] = 2; $this->pagination->initialize($config); $page = ($this->uri->segment(2)) ? $this->uri->segment(2) : 0; $data["links"] = $this->pagination->create_links(); $data['authors'] = $this->authors_model->get_authors($config["per_page"], $page); $this->load->view('authors/index', $data); } }
ΕΔΩ,
- class Authors extends CI_Controller {…} ορίζουμε μια κλάση Authors που επεκτείνει την κλάση CI_Controller
- δημόσια συνάρτηση __construct() {…} αυτή η μέθοδος προετοιμάζει τον γονικό κατασκευαστή και φορτώνει το βοηθητικό url, το μοντέλο συγγραφέων και τη βιβλιοθήκη σελιδοποίησης.
- Το public function index() {…} ορίζει τη μέθοδο που ανταποκρίνεται στους συντάκτες της διαδρομής μας
- $config[“base_url”] = base_url() . «συγγραφείς»· ορίζει τη διεύθυνση URL σελιδοποίησης που θα χρησιμοποιηθεί για τη δημιουργία συνδέσμων σελιδοποίησης
- $config[“total_rows”] = $this->authors_model->get_count(); ορίζει τη συνολική σειρά που πρέπει να σελιδοποιηθεί. Η τιμή ανακτάται από το μοντέλο των συγγραφέων καλώντας τη μέθοδο get_count.
- $config["per_page"] = 10; ορίζει τις σειρές που πρέπει να εμφανίζονται ανά σελίδα
- $config[“uri_segment”] = 2; καθορίζει το τμήμα διεύθυνσης URL που περιέχει την τιμή που θα χρησιμοποιηθεί για την παράλειψη εγγραφών
- $this->pagination->initialize($config); αρχικοποιεί τη βιβλιοθήκη σελιδοποίησης χρησιμοποιώντας την τιμή του πίνακα διαμόρφωσης που ορίσαμε και εκχωρεί τις παραπάνω τιμές.
- $page = ($this->uri->segment(2)) ? $this->uri->segment(2) : 0; ελέγχει εάν ο αριθμός παράβλεψης έχει οριστεί στο δεύτερο τμήμα του URI και αν δεν έχει οριστεί, τότε η τιμή 0 εκχωρείται στη μεταβλητή $page
- $data[“links”] = $this->pagination->create_links(); δημιουργεί τους συνδέσμους σελιδοποίησης και τους εκχωρεί στο κλειδί συνδέσμων της μεταβλητής του πίνακα δεδομένων $.
- data['authors'] = $this->authors_model->get_authors($config[“per_page”], $page); ανέκτησε τις σελιδοποιημένες εγγραφές συντακτών και τις εκχωρεί στο κλειδί συντάκτη της μεταβλητής του πίνακα δεδομένων $
- $this->load->view('authors/index', $data); φορτώνει την προβολή ευρετηρίου στον κατάλογο συγγραφέων και μεταβιβάζει στη μεταβλητή πίνακα $data.
Αυτό είναι για το μοντέλο μας. Ας δημιουργήσουμε τώρα την προβολή που θα εμφανίζει τα αποτελέσματα της βάσης δεδομένων μας.
Δημιουργία νέου καταλόγου συντάκτες σε εφαρμογή/προβολές
Δημιουργήστε ένα νέο αρχείο index.php στο application/views/authors/index.php
Προσθέστε τον παρακάτω κώδικα
<!DOCTYPE html> <html> <head> <title>CodeIgniter Pagination</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css"> </head> <body> <div class="container"> <h3 class="title is-3">CodeIgniter Database Pagination</h3> <div class="column"> <table class="table is-bordered is-striped is-narrow is-hoverable is-fullwidth"> <thead> <tr> <th>ID</th> <th>Contact Name</th> <th>Contact Number</th> <th>Email</th> <th>City</th> </tr> </thead> <tbody> <?php foreach ($authors as $author): ?> <tr> <td><?= $author->id ?></td> <td><?= $author->first_name ?></td> <td><?= $author->last_name ?></td> <td><?= $author->email ?></td> <td><?= $author->birthdate ?></td> </tr> <?php endforeach; ?> </tbody> </table> <p><?php echo $links; ?></p> </div> </div> </body> </html>
ΕΔΩ,
- πραγματοποιεί βρόχους μέσω των αποτελεσμάτων της μεταβλητής $authors και εκτυπώνει τα αποτελέσματα στον πίνακα
- εκτυπώνει τους συνδέσμους σελιδοποίησης στο κάτω μέρος του πίνακα μας.
Ας ξεκινήσουμε τώρα την εφαρμογή μας και ας δούμε τα αποτελέσματα
Σε αυτό το σεμινάριο, χρησιμοποιούμε τον ενσωματωμένο διακομιστή ιστού PHP, αλλά μπορείτε να χρησιμοποιήσετε οποιονδήποτε διακομιστή ιστού που υποστηρίζει PHP.
Ανοίξτε το τερματικό
Εκτελέστε την ακόλουθη εντολή
cd C:\Sites\ci-app php -S localhost:3000
ΕΔΩ,
- Η παραπάνω εντολή περιηγείται στον κατάλογο κώδικα της εφαρμογής και ξεκινά τον ενσωματωμένο διακομιστή στη θύρα 3000.
Σημείωση: η διαδρομή της εφαρμογής πρέπει να ταιριάζει με τη διαδρομή όπου κάνατε λήψη του CodeIgniter. Για αυτό, μπορείτε να χρησιμοποιήσετε οποιονδήποτε αριθμό θύρας είναι δωρεάν στον υπολογιστή σας. Δεν είναι απαραίτητο να χρησιμοποιήσετε τη θύρα 3000.
Ανοίξτε το πρόγραμμα περιήγησης και φορτώστε την παρακάτω διεύθυνση URL
http://localhost:3000/authors
Θα πρέπει να μπορείτε να έχετε αποτελέσματα παρόμοια με τα παρακάτω
Σύνοψη
Σε αυτό το σεμινάριο, καλύψαμε τα βασικά της σελιδοποίησης και εκμεταλλευτήκαμε τη βιβλιοθήκη σελιδοποίησης στο CodeIgniter και το χρησιμοποίησε για να δημιουργήσει μια εφαρμογή που σελιδοποιεί τα αποτελέσματα της βάσης δεδομένων.