Tampilkan postingan dengan label Codeigniter. Tampilkan semua postingan
Tampilkan postingan dengan label Codeigniter. Tampilkan semua postingan

Selasa, 04 Juni 2024

Membuat Visitor Di Website PHP

Assalamualaikum Wr, Wb

Sedikit cerita sebelum ke topik utama, seminggu yang lalu ada rekan meminta tolong untuk menampilkan statistik pengunjung di website, biasanya aku pakai pihak ketiga semisal Histats.com dan ada banyak platform yang menyediakan bisa di searching di google.

Aku mau sharing code membuat statistik pengunjung manual dengan php bisa juga di implementasikan dengan codeigniter, langsung saja langkah langkahnya seperti berikut:


Buat tabel


CREATE TABLE `visitor` (
  `ip` varchar(20) NOT NULL,
  `date` date NOT NULL,
  `hits` int NOT NULL,
  `online` varchar(250) NOT NULL,
  `time` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

Buat code php di File Controller




/ visitor
        $ip    = $this->input->ip_address(); // Mendapatkan IP user
        $date  = date("Y-m-d"); // Mendapatkan tanggal sekarang
        $waktu = time(); //
        $timeinsert = date("Y-m-d H:i:s");
      
        // Cek berdasarkan IP, apakah user sudah pernah mengakses hari ini
        $s = $this->db->query("SELECT * FROM visitor WHERE ip='".$ip."' AND date='".$date."'")->num_rows();
        $ss = isset($s)?($s):0;
        // Kalau belum ada, simpan data user tersebut ke database
        if($ss == 0){
        $this->db->query("INSERT INTO visitor(ip, date, hits, online, time) VALUES('".$ip."','".$date."','1','".$waktu."','".$timeinsert."')");
        }
        // Jika sudah ada, update
        else{
        $this->db->query("UPDATE visitor SET hits=hits+1, online='".$waktu."' WHERE ip='".$ip."' AND date='".$date."'");
        }
        // var_dump($pengunjunghariini);
        // $pengunjunghariini  = $this->db->query("SELECT count(date) as jml FROM visitor WHERE date='".$date."' GROUP BY date")->row(); // Hitung jumlah pengunjung
        $bataswaktu = time() - 300;
        $kemarin  = date("Y-m-d",mktime(0,0,0,date('m'),date('d')-1,date('Y')));
        $pengunjungonline  = $this->db->query("SELECT * FROM visitor WHERE online > '".$bataswaktu."'")->num_rows(); // hitung pengunjung online
        $pengunjunghariini  = $this->db->query("SELECT ip,date FROM visitor WHERE date='".$date."' GROUP BY ip")->num_rows(); // Hitung jumlah pengunjung
        $pengunjungkemarin =$this->db->query('SELECT ip,date FROM visitor WHERE date="'.$kemarin.'" GROUP BY ip')->num_rows();
        $pengunjungbulanini = $this->db->query("SELECT count(date) as bulan FROM visitor WHERE month(date)='".date('m')."' GROUP BY date")->row();
        $dbpengunjung = $this->db->query("SELECT COUNT(hits) as hits FROM visitor")->row(); 
        $totalpengunjung = isset($dbpengunjung->hits)?($dbpengunjung->hits):0; // hitung total pengunjung

        $data['pengunjunghariini']=$pengunjunghariini;
        $data['kemarin']=$pengunjungkemarin;
        $data['bulan']=$pengunjungbulanini->bulan;
        $data['totalpengunjung']=$totalpengunjung;
        $data['pengunjungonline']=$pengunjungonline;


File View



<div class="widget flickr-widget">
    <h1>Statistik Pengunjung</h1>

    <ol class="list-group list-group-numbered">
        <li class="list-group-item d-flex justify-content-between align-items-start">
            
                    Pengunjung Online
            <span class="badge text-bg-success"><?php echo $pengunjungonline ?></span>
        </li>

        <li class="list-group-item d-flex justify-content-between align-items-start">
            Pengunjung Hari ini
            <span class="badge text-bg-primary rounded-pill" style="background-color:#5cb85c; color:#ffffff"><?php echo $pengunjunghariini ?></span>
        </li>
        <li class="list-group-item d-flex justify-content-between align-items-start">
            Pengunjung Kemarin
            <span class="badge text-bg-primary rounded-pill" style="background-color:#337ab7; color:#ffffff"><?php echo $kemarin ?? '0' ?></span>
        </li>
        <li class="list-group-item d-flex justify-content-between align-items-start">
            Pengunjung Bulanan
            <span class="badge text-bg-primary rounded-pill" style="background-color:#ffc107; color:#ffffff"><?php echo $bulan ?></span>
        </li>
        <li class="list-group-item d-flex justify-content-between align-items-start">
            Total Pengunjung
            <span class="badge text-bg-primary rounded-pill" style="background-color:red; color:#ffffff"><?php echo $totalpengunjung ?></span>
        </li>
    </ol>
</div>



Dengan kode di atas tampilan yg dihasilkan akan seperti ini:



Oke semoga bermanfaat happy coding

Rabu, 22 Mei 2024

Error di Codeigniter Yang Jarang Disadari Ketika Project Diupload di Cpanel

 Assalamualaikum Wr, Wb

Sedikit cerita kemaren ada temen dari instansi  mint tolong di cekan code aplikasi website menggunakan Codeigniter 3, yang error, kataya ketika masih devlop di localhost aplikasi lancar jaya dan ketika di hosting ada beberapa controller yang error seperti ini













Nyari nyari solusi belum ketemu solusinya  ternya simple penulisan controller ada spasinya diawal

Contoh

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

   
    public function index()
    {
        $this->load->view('welcome_message');
    }
}

Dari skrip diatas sebelum code <?php ada satu spasi ini yang menjadi sumber masalah, untuk menghilangkan erorr seperti diatas, hapus spasinya saja, dan lihat hasilnya 

Semoga membantu


Senin, 04 April 2022

Membuat Pencarian berbasis mesin google

Assalamualaikum Wr, Wb

Google adalah mesin pencari yang luar biasa, apa saja di web bisa ditemukan Google. Namun, kadang google menampilkan hasil pencarian yang sangat banyak dan kadang menampilkan link yang berbeda bahasa dengan kita. Sebagai contoh, saya suka dengan tutorial pemrograman android, makanya saya membookmark website yang membahas hal tersebut. Namun, kadang saya ingin mencari topik tertentu pada website Bisa ga? Jawabanya adalah sudah tentu bisa.


Langkah Langkah

    1. Masuk ke situs Google.com/cse/.
    2. Klik tombol Add untuk membuat mesin pencari baru
    3. Langkah selanjutnya, tambahkan website yang akan dijadikan referensi pencarian
    4. Dataptkan Kode

    Lihat Gambar


    Semoga bermanfaat 🙏🏻



    Sabtu, 29 Januari 2022

    Mengenal Fungsi Random String Pada Codeigniter

    Assalamualaikum Wr, Wb

    Pada tutorial kali ini kita akan membahas tentang Mengenal Fungsi Random String Pada Codeigniter, seperti yang kita ketahui fungsi dari Random String yaitu menghasilkan bentuk sebuah karakter acak, yang berfungsi untuk membuat sebuah pembuat kata sandi atau bisa juga digunakan untuk kode dalam sebuah situs web, seperti nomor invoice atau pun untuk pembuatan kode token.


    Random String pada codeigniter merupakan sebuah string helper yang bisa kita gunakan untuk pembuatan kode token, atau kode acak. Pada codeigniter random string memiliki beberapa jenis kode acak diantaranya :

    random_string(‘numerik’, jumlah karakter); yaitu merupakan jenis kode acak yang berbentuk numeric string atau nomor acak dari 0-9

    random_string(‘alnum’, jumlah karakter); yaitu merupakan string alfanumeric dengan karakter huruf kecil dan huruf besar

    random_string('nol', jumlah karakter); yaitu merupakan numeric tanpa angka nol(0) hanya angka 1-9

    random_string(‘alfa’, jumlah karakter); yaitu merupakan sebuah string dengan karakter huruf kecil dan huruf besar tanpa menggunakan angka

    random_string('md5'); yaitu merupakan sebuah nomor acak yang terenkripsi berdasarkan md5 () (panjang karakter 32)

    random_string(‘sha1’) yaitu merupakan sebuah nomor acak yang terenkripsi berdasarkan sha1() (panjang karakter 40).

    Selanjutnya kita akan coba untuk menjalankan pada codeigniternya, silahkan teman-teman buat sebuah file pada controller dengan nama Kode.php didalam controller tersebut kita akan memasukkan jenis-jenis random string seperti dibawah ini :

    <?php 
    class Kode extends CI_Controller{
        public function index(){
    	echo random_string('numeric', 8);  echo "<span> -> numeric </span>" ;
    	echo "<br>";
    	echo random_string('alnum', 16);  echo "<span> -> alnum </span>" ;
    	echo "<br>";
    	echo random_string('nozero', 10);  echo "<span> -> nozero </span>" ;
    	echo "<br>";
    	echo random_string('alpha', 10);  echo "<span> -> alpha </span>" ;
    	echo "<br>";
    	echo random_string('md5');  echo "<span> -> md5 </span>" ;
    	echo "<br>";
    	echo random_string('sha1'); echo "<span> -> sha1 </span>" ;
        }
    }
    
    Cukup Sekian Dulu, semoga bermanfaat dan  tetap berbuat positif 🙏🏻

    Jumat, 17 Desember 2021

    MEMBUAT CRUD DENGAN CODEIGNITER #5 UPLOAD GAMBAR

     Assalamualaikum Wr, Wb

    Postingan kali ini akan melanjutkan proses membuat CRUD mengunakkan framework Codeigniter dan Mysqli, kemarin di part#4 sudah kita bahas tentang bagaimana cara membuat file controller dan view, dan juga dibahas bagaimana menampilkan data ke dalama tabel kemudian kita juga sudah bisa menambahkan dan edit data ke dalam database, yap kali ini kita akan membahas bagaimana sih cara upload gambar di codeigniter, penasaran  oke langsung saja.


    Studi Kasus Upload Gambar Data Siswa

    Intro Dulu ya gaes


    Semoga semua dalam keadaan yang baik baik semua, yang sakit segera disembuhkan, yang belum kerja segera dapat kerja, yang punya hajat dari A sampi Z semoga segera terkabulkan, Aminn Amin Ya Robbalalamin. 


    Melanjutkan dari tutorial part4, kali ini kita akan modif tabel siswa, controler da view agar bisa upload gambar siswa, secara proses hampir sama dengan tambah data, cuma kita akan fokus bagai mana cara gambar bisa tersimpan di folder aplikasi dan di database.


    Persiapan Membuat CRUD

    1. Download Framework Codeigniter Versi 3 
    2. Laptop Sudah terintal server contoh, xampp Pilih sesuai dengan os temen temen
    3. Editor untuk menulis code saya menggunakan Visual Studio Code
    Langkah Langkah

    1. Buka tabel siswa sesuaikan sesuai gambar di bawah, menambahkan field baru bernama foto,




    2. Buka file view  siswa_view.php kemudian tambahkan kode seperti di bawah ini,

    <th>Foto</th>
    <td><img src="<?=base_url('upload_file/'.$row->alamat);?>" alt="" srcset="" width="60px"></td>
    

    Buka juga file  tambah siswa kemudian tambahkan kode di bawah ini:

    <tr>
        <td>Foto</td>
        <td>:</td>
        <td><input type="file" name="userfile" ></td>
    </tr>

    3. Buka file  controller siswa kemudian tambahkan function simpan gambar, kode nya seperti di bawah ini

    
     public function simpan(){
            // configurasi file gambar
            $set = array(
                'upload_path'          => realpath('./uploads'),// folder upload 
                'allowed_types'        => 'png|jpg|jpeg', // jenis file
                'max_size'             => 90000, // ukuran file
                'max_width'            => 1024,
                'max_height'           => 768
            );
    
            $this->upload->initialize($set); // bawaan librari upload ci
            $this->load->library('upload', $set); // bawaan librari upload ci
    
    		if ( ! $this->upload->do_upload('userfile'))
    		{
    			$error = array('error' => $this->upload->display_errors());
    			print_r($error);
    		}
    		else
    		{
                $datafile = $this->upload->data(); // bawaan librari upload ci
    			$nama_file = $_FILES['userfile']['name']; // nilai dari input gambar
    
                $nama   = $this->input->post('nama');
                $jk     = $this->input->post('jeniskelamin');
                $alt    = $this->input->post('alamat');
                $tgl    = $this->input->post('tgl');
    
                $data = array(
                    'nama'          => $nama,
                    'jenis_kelamin' => $jk,
                    'alamat'        => $alt,
                    'foto'          => $nama_file, // menambahkan filed baru di tabel siswa untuk menampung nama foto
                    'created_at'    => $tgl
                );
                $this->db->insert('tb_siswa',$data);
                redirect('siswa/index');
            }
    
        }
    


    4. Jangan lupa untuk memanggil library upload di codeigniter untuk pemganggilannya seperti ini, buka folder config, cari file autoload.php persisya seperti ini : namafolder/config/autoload.php tambahkan kode ini:

    
    $autoload['libraries'] = array('database','session','upload');
    

    5. Buka browser temen temen, kemudian klik button tambah, halaman akan pindah ke form Tambah data siswa yang barusan kita buat tampilanya seperti ini dan sudah memodifnya, jika sukses tampilan akan seperti ini:


    6. kode lengkap tambah_view.php seperti ini

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Lulusanskom</title>
    </head>
    <body><center>
            <h2> Tambah Data</h2><br>
            <form action="<?= base_url('siswa/simpan/')?>" method="post" enctype="multipart/form-data">
               <table>
                   <tr>
                       <td>Nama</td>
                       <td>:</td>
                       <td><input type="text" name="nama" placeholder="Nama Siswa"></td>
                   </tr>
                   <tr>
                       <td>Jenis Kelamin</td>
                       <td>:</td>
                       <td>
                           <select name="jeniskelamin">
                                <option value="">-Pilih Jenis Kelamin --</option>
                                <option value="Laki-Laki">Laki Laki</option>
                                <option value="Perempuan">Perempuan</option>
                           </select>
                        </td>
                   </tr>
                   <tr>
                       <td>Alamat</td>
                       <td>:</td>
                       <td><textarea name="alamat"  cols="16" rows="3" placeholder="Alamat"></textarea></td>
                   </tr>
    
                   <tr>
                       <td>Foto</td>
                       <td>:</td>
                       <td><input type="file" name="userfile" ></td>
                   </tr>
    
                   <tr>
                       <td>Tgl Input</td>
                       <td>:</td>
                       <td><input type="date" name="tgl"></td>
                   </tr>
    
                   <tr>
                       <td></td>
                       <td></td>
                       <td><input type="submit" name="simpan" value="Simpan"></td>
                   </tr>
    
               </table></center>
            </form>
    </body>
    </html>
    

    7. File siswa_view.php kode lengkapnya:

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Lulusanskom</title>
    </head>
    <body>
        <center>
        <a href="<?=base_url('siswa/tambah');?>">Tambah</a><br>
        <h2>List Data</h2>
        <table width="50%" cellspacing="" border="1px solid">
            <tr>
                <th>No</th>
                <th>Nama</th>
                <th>Jenis Kelamin</th>
                <th>Alamat</th>
                <th>Foto</th>
                <th>Tanggal</th>
                <th>Aksi</th>
            </tr>
            <tbody>
            <?php $no=1; foreach ($query as $row):?>
                <tr>
                    <td><?=$no++?></td>
                    <td><?=$row->nama?></td>
                    <td><?=$row->jenis_kelamin?></td>
                    <td><?=$row->alamat?></td>
                    <td><img src="<?=base_url('uploads/'.$row->foto);?>" alt=""  width="200px"></td>
                    <td><?=$row->created_at?></td>
                    <td>
                        <a href="<?= base_url('siswa/tampil_edit/'.$row->id_siswa)?>">Edit</a>
                        <a href="<?= base_url('siswa/hapus/'.$row->id_siswa)?>"  onclick="return confirm('Yakin Hapus?')">Hapus</a>
                    </td>
                </tr>
            <?php endforeach; ?>
            </tbody>
        </table>
        </center>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    </body>
    </html>
    

    Coba jalankan di webrowser dan uji coba tambah data jika berhasil secara otomatis data sudah tersimpan di database tampilan seperti ini:



    Oke kita sudah bisa menambahkan data dengan gambar  ke database, dari seri tutorial ini dan semoga bermangfaat 🙏🏻

    Rabu, 15 Desember 2021

    MEMBUAT CRUD DENGAN CODEIGNITER #4 DELETE

      Assalamualaikum Wr, Wb

    Postingan kali ini akan melanjutkan proses membuat CRUD mengunakkan framework Codeigniter dan Mysqli, kemarin di part#4 sudah kita bahas tentang bagaimana cara membuat file controller dan view, dan juga dibahas bagaimana menampilkan data ke dalama tabel kemudian kita juga sudah bisa menambahkan dan edit data ke dalam database, yap kali ini kita akan membahas bagaimana sih cara hapus  data siswa di codeigniter, penasaran  oke langsung saja.


    Studi Kasus Delete Data Siswa

    Intro Dulu ya gaes

    Semoga semua dalam keadaan yang baik baik semua, yang sakit segera disembuhkan, yang belum kerja segera dapat kerja, yang punya hajat dari A sampi Z semoga segera terkabulkan, Aminn Amin Ya Robbalalamin. Melanjutkan dari part kemarin sesuai judul delete data,  kita akan modif file controller dan view untuk membut fungsi delete data.



    Persiapan Membuat CRUD

    1. Download Framework Codeigniter Versi 3 
    2. Laptop Sudah terintal server contoh, xampp Pilih sesuai dengan os temen temen
    3. Editor untuk menulis code saya menggunakan Visual Studio Code
    4. Sudah Mengikuti tutorial Part1,  Part2  dan part3

    Langkah Langkah

    1. Buka file  siswa_view.php kemudian tambahkan kode seperti di bawah ini,

    <a href="<?= base_url('siswa/hapus/'.$row->id_siswa)?>">Hapus</a>

    2. Kita buka File Controller Siswa.php kemudian tambahkan function hapus:
    
    public function hapus($id = '')
        {
            $this->db->where('id_siswa',$id);
            $this->db->delete('tb_siswa');
    
            redirect('siswa/index');
        }
    





    Buka browser temen temen, kemudian klik button Hapus, data otomatis akan terhapus, seharusnya di kasih notif jika data berhasil di hapus. ok sudah selesai part dari crud dengan codeigniter dan mysql ini, Semoga bermanfaat, kode complte controller siswa.php
    
    <?php
    defined('BASEPATH') OR exit('No direct script access allowed');
    
    class Siswa extends CI_Controller 
    {
        public function index()
        {
            // ini code yang harusnya ada di file model_controller
            $data['query'] = $this->db->query('SELECT * FROM tb_siswa')->result();
            $this->load->view('siswa_view',$data);
        }
        // function untuk menampilkan tambah
        public function tambah()
        {
            // ini kode untuk memanggil file view tambah_view.php
            $this->load->view('tambah_view');
        }
        // proses simpan data
        public function simpan()
        {
            $nama   = $this->input->post('nama');
            $jk     = $this->input->post('jk');
            $alt    = $this->input->post('alamat');
            $tgl    = $this->input->post('tgl');
    
            $data = array(
                'nama' => $nama,
                'jenis_kelamin' => $jk,
                'alamat' => $alt,
                'created_at' => $tgl
            );
    
            $this->db->insert('tb_siswa',$data);
            redirect('siswa/index');
        }
        // tampil data untuk edit
        public function tampil_edit($id = '')
        {
            $data['edit'] = $this->db->query("SELECT * FROM tb_siswa  WHERE id_siswa='$id' ")->row();
            $this->load->view('edit_view', $data);
        }
        // Fungsi untuk proses edit data
        public function edit($id = '')
        {
        
            $nama   = $this->input->post('nama');
            $jk     = $this->input->post('jeniskelamin');
            $alt    = $this->input->post('alamat');
            $tgl    = $this->input->post('tgl');
    
            $data = array(
                'nama' => $nama,
                'jenis_kelamin' => $jk,
                'alamat' => $alt,
                'created_at' => $tgl
            );
    
            $this->db->where('id_siswa',$id);
            $this->db->update('tb_siswa',$data);
            redirect('siswa/index');
        }
        // Fugsi untuk hapus daata
        public function hapus($id = '')
        {
            $this->db->where('id_siswa',$id);
            $this->db->delete('tb_siswa');
            redirect('siswa/index');
        }
    
    }
    

    Oke kita sudah bisa tambah edit dan delete data ke database, semoga bermangfaat, cukup sampai disini dulu ya next kedepanya kita akan coba crud  dengan framework boostrap 🙏🏻

    MEMBUAT CRUD DENGAN CODEIGNITER #3 EDIT

     Assalamualaikum Wr, Wb

    Postingan kali ini akan melanjutkan proses membuat CRUD mengunakkan framework Codeigniter dan Mysqli, kemarin di part#2 sudah kita bahas tentang bagaimana cara membuat file controller dan view, dan juga dibahas bagaimana menampilkan data ke dalama tabel kemudian kita juga sudah bisa menambahkan data ke dalam database, yap kali ini kita akan membahas bagaimana sih cara mengedit  data siswa di codeigniter, penasaran  oke langsung saja.

    Studi Kasus Edit Data Siswa

    Intro Dulu ya gaes

    Semoga semua dalam keadaan yang baik baik semua, yang sakit segera disembuhkan, yang belum kerja segera dapat kerja, yang punya hajat dari A sampi Z semoga segera terkabulkan, Aminn Amin Ya Robbalalamin. Melanjutkan dari part kemarin sesuai judul edit data,  kita akan modif file controller dan view untuk kasus edit data dan akan membuat file baru dengan nama edit_view.php


    Persiapan Membuat CRUD
    1. Download Framework Codeigniter Versi 3 
    2. Laptop Sudah terintal server contoh, xampp Pilih sesuai dengan os temen temen
    3. Editor untuk menulis code saya menggunakan Visual Studio Code
    4. Sudah Mengikuti tutorial Part1 dan Part2 
    Langkah Langkah

    1. Buka file  siswa_view.php kemudian tambahkan kode seperti di bawah ini, kegunaanya untuk memanggil     file edit_view.php
     
    <th>Aksi</th>
    <td><a href="<?= base_url('siswa/tampil_edit/'.$row->id_siswa)?>">Edit</a></td>

    2. Membuat file edit_view.php di folder view, kopi kode di bawah ini, ke file edit_view.php

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Edit Lulusanskom</title>
    </head>
    <body><center>
            <h2> Edit Data</h2><br>
            <form action="<?= base_url('siswa/edit/'.$edit->id_siswa)?>" method="post">
               <table>
                   <tr>
                       <td>Nama</td>
                       <td>:</td>
                       <td><input type="text" name="nama" placeholder="Nama Siswa" value="<?=$edit->nama?>" ></td>
                   </tr>
                   <tr>
                       <td>Jenis Kelamin</td>
                       <td>:</td>
                       <td>
                           <select name="jeniskelamin">
                                <option value="">-Pilih Jenis Kelamin --</option>
                                <option value="Laki-Laki" <?php if($edit->jenis_kelamin == 'Laki-Laki') echo 'selected'; ?>>Laki Laki</option>
                                <option value="Perempuan" <?php if($edit->jenis_kelamin == 'Perempuan') echo 'selected'; ?>>Perempuan</option>
                           </select>
                        </td>
                   </tr>
                   <tr>
                       <td>Alamat</td>
                       <td>:</td>
                       <td><textarea name="alamat"  cols="16" rows="3" placeholder="Alamat" ><?=$edit->nama?></textarea></td>
                   </tr>
                   <tr>
                       <td>Tgl Input</td>
                       <td>:</td>
                       <td><input type="date" name="tgl" value="<?=$edit->created_at?>"></td>
                   </tr>
    
                   <tr>
                       <td></td>
                       <td></td>
                       <td>
                           <input type="submit" name="simpan" value="Simpan">
                           <a href="<?=base_url('siswa/index');?>"><input type="button" value=Kembali></a>
                       </td>
                   </tr>
    
               </table>
            </form></center>
    </body>
    </html>
    
    

    3. Kita buka File Controller Siswa.php kemudian tambahkan function kode seperti di bawah ini untuk memanggil file edit_view dan membuat query untuk menampilkan data siswa berdasarkan id yang akan di edit:

     
    public function tampil_edit($id = '')
        {
            $data['edit'] = $this->db->query("SELECT * FROM tb_siswa  WHERE id_siswa='$id' ")->row();
            $this->load->view('edit_view', $data);
        }
    
    

    4. Buka browser temen temen, kemudian klik button Edit, halaman akan pindah ke form Edit data siswa yang barusan kita buat tampilanya seperti ini.

    5. Membuat proses simpan edit ke dalam database  Perhatikan kode ini yang ada di form edit_view.php


    <form action="<?= base_url('siswa/edit/'.$edit->id_siswa)?>" method="post">

    ini artinya proses edit data di arahkan di controller siswa dengan fungsi edit, jadi kita buat dulu function nya kita modif file controller siswa, tambahkan baris kode ini:

     public function edit($id = '')
        {
        
            $nama   = $this->input->post('nama');
            $jk     = $this->input->post('jeniskelamin');
            $alt    = $this->input->post('alamat');
            $tgl    = $this->input->post('tgl');
    
            $data = array(
                'nama' => $nama,
                'jenis_kelamin' => $jk,
                'alamat' => $alt,
                'created_at' => $tgl
            );
    
            $this->db->where('id_siswa',$id);
            $this->db->update('tb_siswa',$data);
            redirect('siswa/index');
        }
    

    Penjelasan sedikit

    kita membuat variabel untuk menampung value dari form edit data, seperti variabel $nama menampung value nama dari form tambah data, perlu di ingat $this->input->post('nama') nama di sesuaikan dengan name yang ada di file tambah_siswa.php, ini codenya hampir sama dengan proses simpan data bedanya di sini kita menggunakan where berdasarkan id_siswa  kemudian dengan merubah query insert dengan update, yang paling penting adalah sesuaikan variabel yang dikirim dari file edit_siswa.php dengan file controller edit jika variabel yang dikirm ke controller adalah id_siswa, berarti di controller kita menggunakan where berdasarkan id_siswa, jadi harus sama, udah di kasih warna yang mesti sama

    Coba jalankan di webrowser dan uji coba edit data jika berhasil secara otomatis data sudah tersimpan di database

    Oke kita sudah bisa menambah dan edit data ke database, selanjutnya kita akan membuat delete data dari seri tutorial ini dan semoga bermangfaat 🙏🏻



    Kamis, 09 Desember 2021

    MEMBUAT CRUD DENGAN CODEIGNITER #2 Tambah

     Assalamualaikum Wr, Wb

    Postingan kali ini akan melanjutkan proses membuat CRUD mengunakkan framework Codeigniter dan Mysqli, kemarin di part#1 sudah kita bahas tentang bagaimana cara membuat file controller dan view, dan juga dibahas bagaimana menampilkan data ke dalama tabel, yap kali ini kita akan membahas bagaimana sih cara menambahkan data siswa di codeigniter, oke langsung saja.

    Studi Kasus Iput Data Siswa

    Intro Dulu ya gaes

    Semoga semua dalam keadaan yang baik baik semua, yang sakit segera disembuhkan, yang belum kerja segera dapat kerja, yang punya hajat dari A sampi Z semoga segera terkabul, Aminn

    Melanjutkan dari part kemarin kita akan modif file controller dan view untuk kasus input data dan akan membuat file baru dengan nama tambah_view.php

    Persiapan Membuat CRUD
    1. Download Framework Codeigniter Versi 3 
    2. Laptop Sudah terintal server contoh, xampp Pilih sesuai dengan os temen temen
    3. Editor untuk menulis code saya menggunakan Visual Studio Code
    Langkah Langkah

    1. Buka file  siswa_view.php kemudian tambahkan kode seperti di bawah ini, kegunaanya untuk memanggil     file tambah data 
    
    <a href="<?=base_url('siswa/tambah');?>">Tambah</a><br>
    
        

    2. Kita buka file Controller Siswa.php kemudian tambahkan kode seperti di bawah ini

    <?php defined('BASEPATH') OR exit('No direct script access allowed');
    
    class Siswa extends CI_Controller 
    {
        public function index()
        {
            // ini code yang harusnya ada di file model_controller
            $data['query'] = $this->db->query('SELECT * FROM tb_siswa')->result();
            $this->load->view('siswa_view',$data);
        }
    
        // function untuk tambah
        public function tambah()
        {
            // ini kode untuk memanggil file view tambah_view.php
            $this->load->view('tambah_view');
        }
    
      
    }
    
    ?>
    

    2. Membuat file tambah_view.php di folder view kopi kode di bawah ini, ke file tambah_view

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Lulusanskom</title>
    </head>
    <body>
            <h2> Tambah Data</h2><br>
            <form action="<?= base_url('siswa/simpan')?>" method="post">
               <table>
                   <tr>
                       <td>Nama</td>
                       <td>:</td>
                       <td><input type="text" name="nama" placeholder="Nama Siswa"></td>
                   </tr>
                   <tr>
                       <td>Jenis Kelamin</td>
                       <td>:</td>
                       <td><select name="jk" >
                           <option value="">-Pilih Jenis Kelamin --</option>
                           <option value="Laki-Laki">Laki Laki</option>
                           <option value="Perempuan">Perempuan</option>
                       </select></td>
                   </tr>
                   <tr>
                       <td>Alamat</td>
                       <td>:</td>
                       <td><textarea name="alamat"  cols="16" rows="3" placeholder="Alamat"></textarea></td>
                   </tr>
                   <tr>
                       <td>Tgl Input</td>
                       <td>:</td>
                       <td><input type="date" name="tgl"></td>
                   </tr>
    
                   <tr>
                       <td></td>
                       <td></td>
                       <td><input type="submit" value="Simpan"></td>
                   </tr>
    
               </table>
            </form>
    </body>
    </html>

    3. Buka browser temen temen, kemudian klik button tambah, halaman akan pindah ke form Tambah data siswa yang barusan kita buat tampilanya seperti ini, isiskan data seperti nama jenis kelamin, alamat dan tanggal input 

    4. Membuat proses simpan ke dalam database  Perhatikan kode ini
     <form action="<?= base_url('siswa/simpan')?>" method="post">

    ini artinya proses simpan data di arahkan di controller siswa dengan fungsi simpan, jadi kita buat dulu function simpan kita modif file controller siswa, kemudian tambahkan baris kode ini:

    public function simpan()
        {
            $nama   = $this->input->post('nama');
            $jk     = $this->input->post('jk');
            $alt    = $this->input->post('alamat');
            $tgl    = $this->input->post('tgl');
    
            $data = array(
                'nama' => $nama,
                'jenis_kelamin' => $jk,
                'alamat' => $alt,
                'created_at' => $tgl
            );
    
            $this->db->insert('tb_siswa',$data);
            redirect('siswa/index');
        }
    
    
    Penjelasan sedikit
    kita membuat variabel untuk menampung value dari form tambah data, seperti variabel $nama menampung value nama dari form tambah data, perlu di ingat $this->input->post('nama') nama di sesuaikan dengan name yang ada di file tambah_siswa kayak gini

    <input type="text" name="nama" placeholder="Nama Siswa">
    Coba jalankan di webrowser dan uji coba tambah data jika berhasil secara otomatis data sudah tersimpan di database

    Oke kita sudah bisa menambahkan data ke database, selanjutnya kita akan membuat edit data dari seri tutorial ini dan semoga bermangfaat 🙏🏻

    Rabu, 08 Desember 2021

    Membuat CRUD dengan Codeigniter #1 TAMPIL

     Assalamualaikum Wr, Wb

    Postingan kali ini akan membuat CRUD mengunakkan framework Codeigniter dan Mysqli 

    Studi Kasus Menampilkan Data Siswa

    Intro Dulu ya gaess
    Sebelum masuk ke tutorialnya alangkah baiknya kita mengerti pengertian dari masing-masing kata diatas.
    Apa itu CRUD?

    CRUD adalah singkatan dari CREATE, READ, UPDATE, DELETE. Itu semua merupakan hal yang penting dan selalu ada dalam aplikasi apapun. Misalkan aplikasi data mahasiswa atau aplikasi data-data lainnya. Tentu aplikasi tersebut membutuhkan CRUD didalamnya.

    Persiapan Membuat CRUD
    1. Download Framework Codeigniter Versi 3 
    2. Laptop Sudah terintal server contoh, xampp Pilih sesuai dengan os temen temen
    3. Editor untuk menulis code saya menggunakan Visual Studio Code
    Langkah Langkah
    1. Buka folder codeigniter hasil download kemudian pindah kedalam folder xampp/htdocs/nama_folder, jika dibuka di visual studio code tampilanya kurang lebih seperti gambar dibawah ini


    1. Buka phpmyadmin untuk membuat database ketik di browser localhost/phpmyadmin
    2. Buat database baru db_crud
    3. Kemudian buat table tb_siswa dengan struktur tabel seperti dibawah ini
    4.   CREATE TABLE `tb_siswa` (
            `id_siswa` int(11) NOT NULL,
            `nama` varchar(100) NOT NULL,
            `jenis_kelamin` enum('Laki-Laki','Perempuan') NOT NULL,
            `alamat` varchar(150) NOT NULL,
            `created_at` datetime NOT NULL
          ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    5. Buka browser ketik localhost/nama_folde sesuai nama folder temen2
    6. Jika tampilan dibrowser temen2 seperti gambar dibawah ini itu tandanya framework codeigniter siap untuk digunakan
    7. Buka browser ketik localhost/nama_folde sesuai nama folder temen2
    8. Jika tampilan dibrowser temen2 seperti gambar dibawah ini itu tandanya framework codeigniter siap untuk digunakan


    9. Seting configurasi koneksi, tempat file koneksi ada di folder appllication/config/database.php kurang lebih seperti gambar dibawah


    10. Langkah selanjutnya buat file controller dan file view kurang lebihnya seperti dibawah ini:
              - File Controller Siswa.php
              File View siswa_view.php

    File Controller
    
    <?php defined('BASEPATH') OR exit('No direct script access allowed');
    
    class Siswa extends CI_Controller 
    {
        public function index()
        {
            // ini code yang harusnya ada di file model_controller
            $data['query'] = $this->db->query('SELECT * FROM tb_siswa')->result();
            $this->load->view('siswa_view',$data);
        }
    
      
    }
    
    ?>
    

    File view siswa_view.php
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Lulusanskom</title>
    </head>
    <body>
        <center>
        <a href="<?=base_url('siswa/tambah');?>">Tambah</a><br>
        <h2>List Data</h2>
        <table width="50%" cellspacing="" border="1px solid">
            <tr>
                <th>No</th>
                <th>Nama</th>
                <th>Jenis Kelamin</th>
                <th>Alamat</th>
                <th>Tanggal</th>
            </tr>
            <tbody>
            <?php $no=1; foreach ($query as $row):?>
                <tr>
                    <td><?=$no++?></td>
                    <td><?=$row->nama?></td>
                    <td><?=$row->jenis_kelamin?></td>
                    <td><?=$row->alamat?></td>
                    <td><?=$row->created_at?></td>
                </tr>
            <?php endforeach; ?>
            </tbody>
        </table>
        </center>
    </body>
    </html>
    

    Penjelasan Sedikit ya

    File Controller
    untuk kasus ini tidak menggunakan model_controller, seperti semboyanya si CI yaitu Model View Controller (MVC), pemanggilan tabel siswa di deklarasikan di file Controller, lihat file Controller, jadi lebih simpel

    File view_siswa
    untuk file view kita panggil varibel query yang memanggil tb_siswa kemudian kita mneggunakan foreach untuk menampilkan semua data


    Oke kita sudah bisa menampilkan data dari database, selanjutnya kita akan membuat tambah data dari seri tutorial ini dan semoga bermangfaat 🙏🏻

    Kamis, 14 Oktober 2021

    Login Codeigniter

     Assalamualikum Wr, Wb


    Topik Kali ini kita akan bahas mengenai pembuatan login di aplikasi pengaduan jaringan berbasis web, fitur ini adalah bagian awal untuk membuat aplikasi, kenapa mesti pakai login di aplikasi, login diperlukan untuk mencegah user melihat data data kita, biasanya digunakan untuk masuk di level administrator, langsung saja


    Perlengkapan / Donwload

    •     Framework Codeigniter v-3
    •     Admin Lte v-2.40 

    Langkah Langkah

    1. Membuat tabel user
    2. Membuat controller login
    3. Membuat model login
    4. Membuat view/tampilan
    Membuat tabel user, sebelum membuat tabel user buat dulu database, struktur tabel user,  insert data di tabel user

    CREATE TABLE `user` (
    `user_id` int(11) NOT NULL,
    `id_desa` varchar(11) NOT NULL DEFAULT 'kosong',
    `id_upt` varchar(11) NOT NULL DEFAULT 'kosong',
    `id_opd` varchar(11) NOT NULL DEFAULT 'kosong',
    `username` varchar(255) NOT NULL,
    `password` varchar(255) NOT NULL,
    `no_telp` varchar(13) NOT NULL,
    `level` enum('0','1') NOT NULL DEFAULT '1'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;


    Insert data user, jalankan kode dibawah ini di phpmyadmin
    
    INSERT INTO `user` (`user_id`, `id_desa`, `id_upt`, `id_opd`, `username`, `password`, `no_telp`, `level`) VALUES
    (17, '', '', '19', 'admin', '255297dc48c4087a1fe0096c802c33336e01f268', '946467457648', '0'),
    

    Membuat Controller Login
    Buat file baru di folder controller, example penamaan file Auth.php kodenya seperti ini:

    
    <?php
    defined('BASEPATH') or exit('No direct script access allowed');
    
    class Auth extends CI_Controller
    {
        function __construct()
        {
            parent::__construct();
            $this->load->model('user_m');
            $this->load->library('form_validation');
        }
    
        public function login()
        {
            check_already_login();
            $data['judul'] = "Login Admin";
            $this->load->view('login', $data);
        }
        
        public function proses()
        {
            $post = $this->input->post(null, true);
            if (isset($_POST['login'])) {
                $this->load->model('user_m');
                $query = $this->user_m->login($post);
    
                if ($query->num_rows() > 0) {
                    $row = $query->row();
                    $params = array(
                        'userid' => $row->user_id,
                        'level' => $row->level
                    );
                    $this->session->set_userdata($params);
                    $this->session->set_flashdata('success', 'Login Berhasil!');
    
                    redirect('administrator');
                } else {
                    echo "<script>
                             alert('Login Gagal! Password atau Username Yang Anda Masukkan Salah');
                             window.location = '" . site_url('login') . "';
                         </script>";
                }
            }
        }
    


    Membuat file Login Model User_m.php

    <?php
    defined('BASEPATH') or exit('No direct script access allowed');
    
    class User_m extends CI_Model
    {
        public function login($post)
        {
            $this->db->select('*');
            $this->db->from('user');
            $this->db->where('username', $post['username']);
            $this->db->where('password', sha1($post['password']));
            // $this->db->where('level != "0"');
            $query = $this->db->get();
            return $query;
        }
     

    Membuat File view login.php
    
    <?php
    defined('BASEPATH') or exit('No direct script access allowed');
    ?>
      <!DOCTYPE html>
    <html>
      
      <head>
      <meta charset="utf-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge">
      <title><?= $judul ?></title>
      <link rel="icon" href="<?= base_url() ?>assets/img/icon.png">
    
      <!-- Tell the browser to be responsive to screen width -->
      <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
      <!-- Bootstrap 3.3.7 -->
      <link rel="stylesheet" href="<?php echo base_url() ?>assets/template/bower_components/bootstrap/dist/css/bootstrap.min.css">
      <!-- Font Awesome -->
      <link rel="stylesheet" href="<?php echo base_url() ?>assets/template/bower_components/font-awesome/css/font-awesome.min.css">
      <!-- Ionicons -->
      <link rel="stylesheet" href="<?php echo base_url() ?>assets/template/bower_components/Ionicons/css/ionicons.min.css">
      <!-- Theme style -->
      <link rel="stylesheet" href="<?php echo base_url() ?>assets/template/dist/css/AdminLTE.min.css">
      <!-- iCheck -->
      <link rel="stylesheet" href="<?php echo base_url() ?>assets/template/plugins/iCheck/square/blue.css">
    
      <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
      <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
      <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
      <![endif]-->
    
      <!-- Google Font -->
      <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
    </head>
    
    <div id="flash-data" data-flashdata="<?= $this->session->flashdata('success'); ?>"></div>
    
    <body class="hold-transition login-page">
      <div class="login-box">
        <div class="login-logo">
          <a href="<?php echo base_url() ?>assets/index2.html"><b>Admin</b>Masuk</a>
        </div>
        <!-- /.login-logo -->
        <div class="login-box-body">
          <p class="login-box-msg">Silahkan Masuk</p>
    
          <form action="<?php echo site_url('auth') ?>" method="post">
            <div class="form-group has-feedback">
              <input type="text" class="form-control" name="username" placeholder="username" required />
              <span class="glyphicon glyphicon-user form-control-feedback"></span>
            </div>
            <div class="form-group has-feedback">
              <input type="password" class="form-control" name="password" placeholder="Password" required />
              <span class="glyphicon glyphicon-lock form-control-feedback"></span>
            </div>
            <div class="row">
              <div class="col-xs-8">
                <div class="checkbox icheck">
                  <label>
                    <input type="checkbox"> Ingat Saya?
                  </label>
                </div>
              </div>
              <!-- /.col -->
              <div class="col-xs-4">
                <button type="submit" name="login" class="btn btn-primary btn-block btn-flat">Masuk</button>
              </div>
              <!-- /.col -->
            </div>
          </form>
        </div>
        <!-- /.login-box-body -->
      </div>
    
      <script src="<?php echo base_url() ?>assets/template/bower_components/jquery/dist/jquery.min.js"></script>
      <!-- Bootstrap 3.3.7 -->
      <script src="<?php echo base_url() ?>assets/template/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
      <!-- iCheck -->
      <script src="<?php echo base_url() ?>assets/template/plugins/iCheck/icheck.min.js"></script>
      <!-- sweetalert -->
      <script src="<?= base_url('assets/sweetalert2.all.min.js') ?>"></script>
      <!-- <script src="<?= base_url('assets/popup.js') ?>"></script> -->
    
    
      <script>
        $(function() {
          $('input').iCheck({
            checkboxClass: 'icheckbox_square-blue',
            radioClass: 'iradio_square-blue',
            increaseArea: '20%' /* optional */
          });
        });
      </script>
    
      <script>
        var flashData = $('#flash-data').data('flashdata');
        // console.log(flashData);
    
        if (flashData) {
          Swal.fire({
            icon: "success",
            title: "Logout Berhasil!",
            text: "Jangan Lupa Beristirahat",
          })
        }
        //   else{
        //     Swal.fire({
        //     title: "Login Gagal",
        //     text: "Username atau Password Anda Tidak terdaftar",
        //     icon: "error",
        //   });
        // }
      </script>
      <script>
        // $("#gagal").click(function(){
    
        //   swal.fire({
        //     title : "Login Gagal!",
        //     text : "Password atau Username Yang Anda Masukkan Salah",
        //     icon : "Warning",
        //   })
        // })
        // var masuk = $('#salah').data('gagal');
    
        // if(masuk){
        //     swal.fire({
        //     title : "Login Gagal!",
        //     text : "Password atau Username Yang Anda Masukkan Salah",
        //     icon : "Warning",
        //   })
        // }
      </script>
    
    </body>
    
    </html>
    


    Jalankan projec di web tampilan seperti dibawah ini















    Semoga bermanfaat next postingan akan membuat tampilan dashboard setelah login 🙏🙏

    Kategori