Sebelumnya
kita persiapkan terlebih dahulu databasenya. Kita buat databasenya dengan nama “d4b6”.
Buat juga tabelnya dengan nama news dengan struktur sqlnya seperti dibawah ini
:
CREATE TABLE
`db_d4b6`.`news` (`id` INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,`title`
VARCHAR( 255 ) NOT NULL ,`content` TEXT NOT NULL ,`create` DATETIME NOT NULL
,`udpate` TIMESTAMP NOT NULL ,`delete` DATETIME NOT NULL
) ENGINE = INNODB;
) ENGINE = INNODB;
Setelah kita
buat tabel dan databasenya langkah kita berikutnya adalah sebagai berikut:
1. Membuat
inputan kedalam data base:
- pertama
kita buat file modelnya dengan nama newsModel.php
(application/model/modelNews.php) dengan scriptnya seperti gambar dibawah ini :
<?php if ( ! defined('BASEPATH'))
exit('No direct script access allowed');
class ModelNews extends CI_Model {
function __construct()
{
parent::__construct();
}
function
getAllNews(){
$q="SELECT
* FROM news";
return
$this->db->query($q);
}
function
insertNews($title,$content){
$q="INSERT
INTO news (title,content,`create`,`update`,`delete`) VALUES
('$title','$content','1','1','1')";
return
$this->db->query($q);
}
}
- langkah
kedua kita buat untuk controllernya dengan nama
news.php(application/controllers/news.php) dengan code sebagai berikut:
<?php if ( ! defined('BASEPATH'))
exit('No direct script access allowed');
class News extends CI_Controller {
public function show()
{
$data['n']
= $this->ModelNews->getAllNews();
$this->load->view('news/view_show_page',
$data);
}
public function input()
{
$this->load->helper(array('form',
'url'));
$this->load->library('form_validation');
$this->form_validation->set_rules('title',
'Title', 'required');
$this->form_validation->set_rules('content',
'Content', 'required');
if
($this->form_validation->run() == FALSE)
{
$this->load->view('news/view_input');
}
else
{
$this->ModelNews->insertNews($_POST['title'],$_POST['content']);
redirect('news/show');
}
}
}
- langkah selanjutnya kita buat
tampilan form inputnya pada view, dengan nama view_input.php
(application/view/view_input.php) dengan script sbb:
<html>
<head>
<title>My Form</title>
</head>
<body>
<?php
echo validation_errors(); ?>
<?php
echo form_open('news/input'); ?>
<h5>TItle</h5>
<?php
echo form_error('title'); ?>
<input
type="text" name="title" value="<?php echo
set_value('title'); ?>" size="50" />
<h5>Content</h5>
<?php
echo form_error('content'); ?>
<input
type="text" name="content" value="<?php echo
set_value('content'); ?>" size="50" />
<div><input
type="submit" value="Submit" /></div>
</form>
</body>
</html>
- Maka ketika kita ketikkan urlnya http://localhost/d4b6/news/input maka akan muncul halaman seperti
gambar dibawah ini:
-
Setelah muncul
halaman seperti diatas maka kita akan membuat halaman actionnya ketika berhasil
menginputkannya. Kita buat untuk halaman
menampilkan datanya dengan nama view_show_page.php
(application/view/view_show_page.php) dengan script seperti gambar dibawah ini
:
<?
print_r($n);
$sr = $n->result();
?>
<p>List
News</p>
<?
foreach($sr as $r){ ?>
<? echo $r->id?> <br
/>
<? echo $r->title?>
<br />
<?
echo $r->content?> <br />
<?echo
$r->create?> <br />
||<a
href="<?=base_url();?>news/delete/<?=$r->id?>">
Delete</a>
<br />
<?
} ?>
-
Selanjutnya
isikan data pada form input maka ketika disubmit akan menampilkan halaman
view_show_page.php seperti gambar dibawah ini :
Bila nampak
seperti gambar diatas maka proses inputan kita telah berhasil.
2.
Delete Data
Setelah kita berhasil menginputkan data maka
langkah selanjutnya kita buat fungsi
delete pada model. Tambahkan script pada modelNews.php sbb:
function delNewsById($id){
$q="DELETE
FROM news WHERE id='$id'";
return
$this->db->query($q);
}
Kemudian buat controllernya pada
news.php seperti dibawah ini:
public
function delete($id="")
{
$this->ModelNews->delNewsById($id);
redirect('news/show');
}
3. Membuat upload file
Langkah awal pembuatan upload file
menurut dari user guide adalah sebagai berikut :
-
Buat
folder “uploads” pada folder d4b6 (nama folder codeigniter)
-
Membuat controller terlebih dahulu dengan nama
upload.php (application/controllers/upload.php
Ketikkan
script seperti gambar dibawah ini :
<?php
class
Upload extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('form',
'url'));
}
function index()
{
$this->load->view('view_upload',
array('error' => ' ' ));
}
function do_upload()
{
$config['upload_path']
= './uploads/';
$config['allowed_types']
= 'gif|jpg|png';
$config['max_size'] = '1000';
$config['max_width'] = '2000';
$config['max_height'] = '1000';
$this->load->library('upload',
$config);
if ( !
$this->upload->do_upload())
{
$error
= array('error' => $this->upload->display_errors());
$this->load->view('view_upload',
$error);
}
else
{
$data
= array('upload_data' => $this->upload->data());
$this->load->view('upload_success',
$data);
}
}
}
?>
-
Setelah kita buat
controllernya selanjutnya kita buat untuk viewnya, buat file dengan nama
view_upload.php (application/view/view_upload.php). ketikkan scriptnya seperti
berikut:
<html>
<head>
<title>Upload
Form</title>
</head>
<body>
<?php echo $error;?>
<?php echo
form_open_multipart('upload/do_upload');?>
<input type="file"
name="userfile" size="20" />
<br /><br />
<input type="submit"
value="upload" />
</form>
</body>
</html>
-
Setelah kita buat
untuk viewnya maka kita buat juga untuk tampilan berhasil uploadnya dengan nama
upload_success.php dengan script sebagai berikut :
<html>
<head>
<title>Upload
Form</title>
</head>
<body>
<h3>Your file was successfully
uploaded!</h3>
<ul>
<?php foreach ($upload_data as $item =>
$value):?>
<li><?php echo $item;?>: <?php
echo $value;?></li>
<?php endforeach; ?>
</ul>
<p><?php echo anchor('upload',
'Upload Another File!'); ?></p>
</body>
</html>
Untuk pengujian
buka browser dan ketikkan http://localhost/d4b6/upload maka akan nampak tampilan seperti gambar
dibawah ini :
Pilih file dan submit maka bila
berhasil memasukkan gambar akan muncul tampilan seperti gambar dibawah ini:
Tidak ada komentar:
Posting Komentar