Berikut contoh membuat Guestbook sederhana
Database
Nama tabel yang digunakan ‘guestbook’, jalankan scriptnya berikut pada database mysql Anda
Nama tabel yang digunakan ‘guestbook’, jalankan scriptnya berikut pada database mysql Anda
1
2
3
4
5
6
7
8
| CREATE TABLE `guestbook` ( `guestid` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `name` VARCHAR( 50 ) NOT NULL , `email` VARCHAR( 65 ) NOT NULL , `facebook` VARCHAR( 65 ) NULL , `twitter` VARCHAR( 65 ) NULL , `message` VARCHAR( 255 ) NOT NULL ); |
Model
Umumnya penamaanya menggunakan prefix m_, tapi sebenarnya terserah Anda menamakannya
nama file : m_guestbook, digunakan untuk akses database
Umumnya penamaanya menggunakan prefix m_, tapi sebenarnya terserah Anda menamakannya
nama file : m_guestbook, digunakan untuk akses database
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
| <?php class M_guestbook extends Model{ //constructor function M_guestbook() { parent::Model(); } function simpan( $name , $email , $facebook , $twitter , $message ){ $data = array ( "name" => $name , "email" => $email , "facebook" => $facebook , "twitter" => $twitter , "message" => $message ); $this ->db->insert( 'guestbook' , $data ); if ( $this ->db->affected_rows()) return '1' ; else return '0' ; } } ?> |
digunakan affected rows, untuk mengecek apakah data berhasil disimpan ke dalam database atau tidak
Controller
Umumnya penamaanya menggunakan prefix c_, tapi sebenarnya terserah Anda menamakannya
nama file : c_guestbook, digunakan untuk event control terhadap page
Umumnya penamaanya menggunakan prefix c_, tapi sebenarnya terserah Anda menamakannya
nama file : c_guestbook, digunakan untuk event control terhadap page
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
| <?php class C_guestbook extends Controller { //constructor function C_guestbook(){ parent::Controller(); session_start(); $this ->load->model( 'm_guestbook' , '' , TRUE); } //set index function index(){ $this ->load->view( 'v_guestbook.php' ); } function simpan(){ //POST varible here //auto increment, don't accept anything from form values $name =trim(@ $_POST [ "name" ]); $name = str_replace ( "/(<\/?)(p)([^>]*>)" , "" , $name ); $name =htmlspecialchars( $name ,ENT_QUOTES); $email =trim(@ $_POST [ "email" ]); $email = str_replace ( "/(<\/?)(p)([^>]*>)" , "" , $email ); $email =htmlspecialchars( $email ,ENT_QUOTES); $facebook =trim(@ $_POST [ "facebook" ]); $facebook = str_replace ( "/(<\/?)(p)([^>]*>)" , "" , $facebook ); $facebook =htmlspecialchars( $facebook ,ENT_QUOTES); $twitter =trim(@ $_POST [ "twitter" ]); $twitter = str_replace ( "/(<\/?)(p)([^>]*>)" , "" , $twitter ); $twitter =htmlspecialchars( $twitter ,ENT_QUOTES); $message =trim(@ $_POST [ "message" ]); $message = str_replace ( "/(<\/?)(p)([^>]*>)" , "" , $message ); $message =htmlspecialchars( $message ,ENT_QUOTES); $result = $this ->m_guestbook->simpan( $name , $email , $facebook , $twitter , $message ); if ( $result == '0' ){ $data [ "msg" ]= "Data tidak bisa disimpan" ; } else { $data [ "msg" ]= "Data sukses disimpan" ; } $this ->load->vars( $data ); $this ->index(); } } ?> |
- Penerimaan variable post dilakukan di dalam fungsi simpan
- Fungsi str_replace di atas untuk menghilangkan inputan yang berupa code php/html agar tidak menjadi spam code
- Fungsi htmlspecialchars, ENT_QUOTES digunakan agar bisa mengubah single quote ato double quote ke dalam bentuk code html (ASCII) sehingga tidak jadi masalah ketika disimpan ke dalam database
View
Umumnya penamaanya menggunakan prefix v_, tapi sebenarnya terserah Anda menamakannya
nama file : v_guestbook, digunakan untuk layout view page
Umumnya penamaanya menggunakan prefix v_, tapi sebenarnya terserah Anda menamakannya
nama file : v_guestbook, digunakan untuk layout view page
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
| <html> <body> <?php if (@ $msg <> "" ) echo @ $msg ; ?> <form action= "<?php echo base_url();?>index.php?c=c_guestbook&m=simpan" method= "post" > <table> <tr> <td colspan= "2" align= "center" ><h1>GUESTBOOK</h1></td> </tr> <tr> <td>Name</td> <td><input id= "name" name= "name" type= "text" size= "30" maxlength= "50" /></td> </tr> <tr> <td>Email</td> <td><input id= "email" name= "email" type= "text" size= "30" maxlength= "65" /></td> </tr> <tr> <td>Facebook</td> <td><input id= "facebook" name= "facebook" type= "text" size= "30" maxlength= "65" /></td> </tr> <tr> <td>Twitter</td><td><input id= "twitter" name= "twitter" type= "text" size= "30" maxlength= "65" /></td> </tr> <tr> <td>Message</td> <td><textarea id= "message" name= "message" cols= "30" rows= "3" ></textarea></td> </tr> <tr> <td colspan= "2" align= "center" > <input type= "submit" value= "Simpan" name= "simpan" > </td> </tr> </table> </form> </body> </html> |
Perhatikan form actionnya :
1
| <form action= "<?php echo base_url();?>index.php?c=c_guestbook&m=simpan" method= "post" > |
arahkan m (fuction) ke function ‘simpan’ sesuai yang ada pada controller
Dan ini setelah proses input
Ok, contoh singkat di atas semoga bisa membantu
Semoga berhasil, semangat selalu. Ignite your code !!!
Code Igniter : Membuat halaman input sederhana (GuestBook)
4/
5
Oleh
ilyunal