Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Tampilan data tiap akun
Halo Para Mastah, Saya disini mau menanyakan seputar data yang telah ditambahkan oleh salah satu akun tetapi tidak bisa dilihat oleh akun lain, berikut gambarannya :
#Untuk modelnya
public function getTasks()
{
$query = "SELECT `user_tasks`.*,`user`.`name`
FROM `user_tasks` JOIN `user`
ON `user_tasks`.`tasks_id` = `user`.`id`
";
return $this->db->query($query)->result_array();
}
#Untuk controllernya
public function tasks()
{
$data['title'] = 'Tasks';
$data['user'] = $this->db->get_where('user', ['email' => $this->session->userdata('email')])->row_array();
$this->load->model('Tasks_model', 'name');
$data['tasks'] = $this->name->getTasks();
$data['name'] = $this->db->get('user')->result_array();
$this->form_validation->set_rules('tasks_id', 'ID', 'required');
$this->form_validation->set_rules('job', 'Job', 'required');
$this->form_validation->set_rules('progress', 'Progress', 'required');
if ($this->form_validation->run() == false) {
$this->load->view('templates/header', $data);
$this->load->view('templates/sidebar', $data);
$this->load->view('templates/topbar', $data);
$this->load->view('user/tasks', $data);
$this->load->view('templates/footer');
} else {
$data = [
'tasks_id' => $this->input->post('tasks_id'),
'job' => $this->input->post('job'),
'progress' => $this->input->post('progress')
];
$this->db->insert('user_tasks', $data);
$this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">New Tasks added
</div>');
redirect('user/tasks');
}
}
#Untuk viewsnya
<table class="table table-hover">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Name</th>
<th scope="col">Job</th>
<th scope="col">Progress</th>
</tr>
</thead>
<tbody>
<?php $i = 1; ?>
<?php foreach ($tasks as $t) : ?>
<tr>
<th scope="row"><?= $i; ?></th>
<td><?= $t['name']; ?></td>
<td><?= $t['job']; ?></td>
<td><?= $t['progress']; ?></td>
</tr>
<?php $i++; ?>
<?php endforeach; ?>
</tbody>
</table>
Untuk cara nambah datanya sih sudah saya akali dengan value="" readonly, jadi ketika nambahin data hanya berdasarkan nama/email akun login. Tetapi untuk tampilannya bisa dilihat oleh akun lain.
Mohon pencerahannya para Mastah. Maklum masi newbie jadi belum gitu paham.
3 Jawaban:
saat insert masukan id user yang input gan, agar bisa tersaring saat menampilkan datanya
Berarti langsung masukkan filter di controller ya gan? Bukan di views? Kalau bisa sarannya sekalian perintahnya gan biar ane lebih paham.
Btw ane pake CI 3 framework bs 4
siapkan kolom user_id di table untuk nampung user yang menginputkan.
nnti di controller tambah user_id berdasarkan SESSION['user_id']
di view kasih where user_id = SESSION['user_id']