Selasa, 04 Desember 2012

CodeIgniter - halaman statis

,
Catatan: Tutorial ini mengasumsikan Anda men-download dan diinstal CodeIgniter Framework dalam lingkungan pengembangan Anda.

Hal pertama yang Anda akan lakukan adalah mendirikan sebuah kontroler untuk menangani halaman statis. Controller hanyalah kelas yang membantu kerja delegasi. Ini adalah perekat dari aplikasi web Anda.

Misalnya, ketika panggilan dilakukan ke: http://example.com/news/latest/10 Kita mungkin membayangkan bahwa ada kontroler bernama "berita". Metode yang dipanggil pada berita akan "terbaru". Pekerjaan Metode berita itu bisa untuk mengambil 10 item berita, dan membuat mereka di halaman. Sangat sering dalam MVC, Anda akan melihat pola URL yang cocok: http://example.com/ [kontroler kelas] / [kontroler-metode] / [argumen] Sebagai skema URL menjadi lebih kompleks, ini dapat berubah. Tetapi untuk sekarang, ini semua kita perlu tahu.

Buat file pada aplikasi / controllers / pages.php dengan kode berikut.
Anda telah membuat sebuah kelas bernama "halaman", dengan metode pandangan yang menerima satu argumen bernama $ halaman. Kelas halaman adalah memperluas kelas CI_Controller. Ini berarti bahwa kelas halaman baru dapat mengakses metode dan variabel didefinisikan dalam kelas CI_Controller (system / core / Controller.php).

Controller adalah apa yang akan menjadi pusat dari setiap permintaan untuk aplikasi web Anda. Dalam diskusi CodeIgniter sangat teknis, hal itu dapat disebut sebagai obyek super. Seperti kelas php, Anda lihat itu dalam kontroler Anda sebagai $ this. Mengacu pada $ ini adalah bagaimana Anda akan memuat perpustakaan, pandangan, dan umumnya perintah kerangka.

Sekarang Anda telah membuat metode pertama Anda, saatnya untuk membuat beberapa halaman template dasar. Kami akan menciptakan dua "pandangan" (halaman template) yang bertindak sebagai footer halaman dan header.

Buat header pada aplikasi / views / templates / header.php dan tambahkan kode berikut.
Header berisi kode HTML dasar yang Anda akan ingin ditampilkan sebelum memuat tampilan utama, bersama-sama dengan judul a. Hal ini juga akan menampilkan variabel $ title, yang kita akan mendefinisikan kemudian di controller. Sekarang membuat footer pada aplikasi / views / templates / footer.php yang mencakup kode berikut:
Menambahkan logika ke controller

Sebelumnya Anda mengatur controller dengan pandangan () metode. Metode ini menerima satu parameter, yaitu nama halaman yang akan dimuat. Template halaman statis akan berlokasi di aplikasi / views / pages / direktori.

Dalam direktori tersebut, membuat dua file bernama home.php dan about.php. Dalam berkas tersebut, ketik beberapa teks - apa pun yang Anda ingin - dan menyelamatkan mereka. Jika Anda ingin menjadi sangat un-asli, cobalah "Hello World!".

Dalam rangka untuk memuat halaman tersebut, Anda harus memeriksa apakah halaman yang diminta benar-benar ada:


public function view($page = 'home')
{
			
	if ( ! file_exists('application/views/pages/'.$page.'.php'))
	{
		// Whoops, we don't have a page for that!
		show_404();
	}
	
	$data['title'] = ucfirst($page); // Capitalize the first letter
	
	$this->load->view('templates/header', $data);
	$this->load->view('pages/'.$page, $data);
	$this->load->view('templates/footer', $data);

}
Sekarang, saat halaman tidak ada, itu dimuat, termasuk header dan footer, dan ditampilkan kepada pengguna. Jika halaman tidak ada, "404 Halaman tidak ditemukan" kesalahan ditampilkan.

Baris pertama dalam metode ini memeriksa apakah halaman benar-benar ada. File_exists asli PHP () Fungsi ini digunakan untuk memeriksa apakah file tersebut di tempat yang diharapkan. show_404 () adalah built-in fungsi CodeIgniter yang membuat halaman error default.

Pada header template, variabel $ title digunakan untuk menyesuaikan judul halaman. Nilai dari judul didefinisikan dalam metode ini, tapi bukannya menempatkan nilai ke variabel, itu ditugaskan untuk elemen judul dalam array $ data.

Hal terakhir yang harus dilakukan adalah memuat pandangan dalam urutan mereka harus ditampilkan. Parameter kedua dalam metode pandangan () digunakan untuk melewatkan nilai ke tampilan. Setiap nilai dalam array $ data yang diberikan ke sebuah variabel dengan nama kunci. Jadi nilai $ data ['title'] di controller ini setara dengan $ judul dalam tampilan.

Routing

Kontroler ini sekarang berfungsi! Arahkan browser Anda ke [-situs Anda-url] index.php / pages / view untuk melihat halaman Anda. Ketika Anda mengunjungi index.php / pages / pandangan / tentang Anda akan melihat halaman tentang, lagi termasuk header dan footer.

Menggunakan aturan routing kustom, Anda memiliki kekuatan untuk memetakan URI apapun kepada controller dan metode, dan membebaskan diri dari konvensi normal: http://example.com/ [kontroler kelas] / [kontroler-metode] / [argumen]

Mari kita lakukan itu. Buka file routing yang terletak di application / config / routes.php dan tambahkan dua baris berikut. Hapus semua kode lain yang menetapkan setiap elemen dalam array rute $.

$ route ['default_controller'] = 'Halaman / melihat';
$ route ['(: any)'] = 'halaman / view / $ 1';

CodeIgniter membaca aturan routing dari atas ke bawah dan rute permintaan ke aturan pertama yang cocok. Setiap aturan adalah ekspresi reguler (sisi kiri) dipetakan ke controller dan nama metode dipisahkan oleh garis miring (sisi kanan). Ketika permintaan datang, CodeIgniter mencari pertandingan pertama, dan panggilan pengendali yang tepat dan metode, mungkin dengan argumen.

Informasi lebih lanjut tentang routing dapat ditemukan dalam dokumentasi URI Routing.

Di sini, aturan kedua dalam array $ rute sesuai permintaan menggunakan string

0 komentar to “CodeIgniter - halaman statis”

Posting Komentar