Ngoding jadi pusing karena lupa.

Breaking

Showing posts with label NATIVE. Show all posts
Showing posts with label NATIVE. Show all posts

Thursday, February 21

February 21, 2019

Skill pertama yang harus anda miliki

Skill pertama yang harus anda miliki jika ingin menjadi seorang PROGRAMMER dengan cara otodidak akan saya bahas dengan bahasa dan dengan segenap pengalaman yang sudah saya alami sendiri di dalam artikel berikut ini.

Hai kalian para pembaca yang merasa masih newbie, masih nubb, masih bau kencur seperti saya (penulis) di bidang Pemrograman. Selamat, anda sedang membaca artikel yang tepat. Kenapa saya katakan tepat, karena dengan adanya Artikel ini, saya harap anda akan menjadi lebih baik.

Tukang ngomong.
Alasan saya membuat tulisan ini, sangat sederhana. Supaya kita semua bisa menjadi pemula yang tidak benar - benar kosong di bidang pemrograman. Ok, langsung aja yok apa sih Skill pertama yang harus kita miliki jika kita ingin menjadi salah satu orang yang bisa menyandang gelar ProGrammer.

Yang utama dan paling utama adalah Skill yang hanya bisa anda lakukan sendiri, karena skill ini biar bagaimanapun sejauh yang saya tau, belum pernah ada tutorialnya, kalaupun ada. mungkin hanya menjelaskan tentang kulitnya saja.

Apakah skill itu ?
Skill ini saya beri nama skill GOOGLING.

Yang mau skip membaca silahkan, yang mau lanjut, ayo lanjut bacanya.

Kenapa saya katakan skill GOOGLING. karena skill ini adalah skill yang sangat sulit untuk di ajarkan. Skill ini hanya bisa Bangkit dari diri seseorang yang benar - benar sudah mahir menggunakan GOOGLE dan juga mahir memilah dari hasil yang sudah diberikan GOOGLE.

Untuk calon programmer, ada skill tambahan yang perlu di kuasai setelah pandai memilah, yaitu tidak boleh takut untuk mencoba atas hasil yang sudah diberikan oleh GOOGLE (walaupun mungkin menyesatkan).

Selain itu, kenapa saya katakan ini adalah SKILL UTAMA yang harus dimiliki. Hal ini sangat mempengaruhi cara anda bertanya jawab di dalam suatu forum.

Ilustrasi :

PRO :
#Ask #Android Studio #RecyclerView
Permisi, saya ingin bertanya tentang RecyclerView, saya sedang mencoba untuk membuat event clik untuk setiap data yang akan di tampilkan oleh RecyclerView.
Saya sudah mencoba tutorial dari  tutorial ini, dan ini Namun masih tidak bisa. malah muncul NullPointerExeption.
Dan berikut ini Error yang dimunculkan.
Mohon bantuannya ya.


Ilustrasi :

SUPER NUB :
Om, bagi link tutorial RecYclerview donk.

Another one Ilustrasi :
The Power OF NUB :
Om, bagi source code Recyclerview donk.
Tenang, uang pulsa ada kok 10K.


Itu ada tiga contoh ilustrasi pertanyaan yang di lemparkan ke suatu forum yang sebenernya kurang lebih sama. hanya berbeda cara menyampaikannya. hanya saja, untuk mendapatkan pertanyaan yang nampak lebih baik, seperti pertanyaan yang pertama, Anda harus sudah menguasai skill GOOGLING dan add-on nya (Mencoba).

Coba renungkan, anda itu tipe yang mana ?

Jika anda sudah termasuk tipe yang pertama, selamat anda sudah termasuk menguasai skill GOOGLING.

Jika anda masuk ke kategori kedua dan ketiga. sebaiknya anda harus menguasai skill GOOGLING ini terlebih dahulu.


Halah, kebanyakan BACOT  omong doank !

Sepengalaman saya sebagai salah satu warga di suatu forum, walaupun bobot pertanyaannya dari 3 pertanyaan tadi, tapi yang akan di bantu di jawab adalah pertanyaan no 1.

Pertanyaan no 2 dan 3 akan di jawab, dengan jawaban : GOOGLING dulu sanah.
Palingan kalo lagi hoki aja pertanyaan no 2 dan 3 akan di jawab.

Ok, next
Benefit lainnya jika anda sudah menguasai skill ini, anda bisa menemukan solusi lebih cepat.

KENAPA ????

Ya banyangin aja, jika anda bertanya ke suatu forum dengan jumlah mencapai 1000 orang, anggap deh 800 orangnya sudah PRO semua, dari sisa 200 orang ini, apakah cuman anda yang akan bertanya ?
Tentu tidak, jika anda bertanya ke forum, pertanyaan anda bisa saja tertimbun dengan pertanyaan lain, dan lebih parahnya lagi, tertimbun oleh postingan yang tidak ada hubungannya di forum tersebut (link pemersatu bangsa misalnya). Nah selain itu, karena tipe pertanyaan yang anda tuliskan kemungkinan akan menjadi tipe 2 atau 3, maka para orang yang 800 tadi juga akan mengabaikan pertanyaan anda. Belum lagi jika ternyata di jawabnya setelah 1 jam anda bertanya, mngkin anda sudah lupa tadi bertanya apa.


Tapi jika anda sudah menguasai skill GOOGLING, anda tidak akan bertanya ke forum, anda akan langsung bertanya ke GOOGLE, dan mencoba, jika beruntung masalah anda akan langsung kelar, jika belum beruntung dan anda harus bertanya ke forum, maka pertanyaan anda akan menjadi pertanyaan dengan tipe no 1. Dan dengan pertanyaan tipe 1 ini, kemungkinan akan langsung di jawab akan sangat tinggi. 

Jadi gimana dengan skill ini ?
Masih mau mengabaikannya ?

Ok, semoga setelah membaca omongan dari Nub seperti saya ini, anda bisa menjadi lebih pro.
Silahkan tinggalkan saran dan komentar, supaya saya yang Nub ini bisa menjadi PRO juga.

Terimakasih banyak.

Friday, November 30

November 30, 2018

Menentukan Jenis Operator dari No HP (Android Studio)


Selamat datang di tulisan pertama saya tentang pemrograman android. Pada tulisan kali ini, saya sedang belajar untuk menentukan jenis operator dari suatu no seluler.

Seperti yang sudah kita ketahui, bahwa sistem penomoran no hp di indonesia itu cukup sederhana, yaitu kita bisa menentukan jenis suatu operator hanya dari beberapa nomor awalnya saja.

Ok, langsung aja yuk
Ok, awal sih sama saja seperti biasa,  buat project baru, dan pilih yang empty activiti saja

Diluar method oncreate, saya membuat method baru, dengan nama getData()

    Map<String, String> getData(){
        Map<String,String> operator = new HashMap<>();
        operator.put("62811","Telkomsel");
        operator.put("62812","Telkomsel");
        operator.put("62813","Telkomsel");
        operator.put("62821","Telkomsel");
        operator.put("62822","Telkomsel");
        operator.put("62823","Telkomsel");
        operator.put("62851","Telkomsel");
        operator.put("62852","Telkomsel");
        operator.put("62853","Telkomsel");
        operator.put("62814","Indosat");
        operator.put("62815","Indosat");
        operator.put("62816","Indosat");
        operator.put("62855","Indosat");
        operator.put("62856","Indosat");
        operator.put("62857","Indosat");
        operator.put("62858","Indosat");
        operator.put("62817","XL / Axis");
        operator.put("62818","XL / Axis");
        operator.put("62819","XL / Axis");
        operator.put("62859","XL / Axis");
        operator.put("62877","XL / Axis");
        operator.put("62878","XL / Axis");
        operator.put("62879","XL / Axis");
        operator.put("62831","XL / Axis");
        operator.put("62833","XL / Axis");
        operator.put("62835","XL / Axis");
        operator.put("62836","XL / Axis");
        operator.put("62837","XL / Axis");
        operator.put("62838","XL / Axis");
        operator.put("62839","XL / Axis");
        operator.put("6288","Smartfren");
        operator.put("62899","Three");
        operator.put("62898","Three");
        operator.put("62897","Three");
        operator.put("62896","Three");
        operator.put("62895","Three");
        operator.put("62894","Three");
        operator.put("62893","Three");
        return operator;
    }

Setelah itu saya juga membuat method baru lagi, dengan nama cekOp()

Berikut kode yang saya tambahkan.
    String cekOp(String pref){
        String ret ="";
        Map<String, String> operator = getData();
        for (Map.Entry<String,String> entry : operator.entrySet()){
            if (pref.equalsIgnoreCase(entry.getKey())){
                ret = entry.getValue();
            }
        }
        if (ret.equalsIgnoreCase("")){
            ret = "Tidak ditemukan";
        }
        return ret;
    }
Kode tersebut saya gunakan untuk melakukan pengecekan dari data yang sudah di buat di method yang sebelumnya, yaitu method getData();

Cara yang saya lakukan adalah, dengan cara menyamakan antara key dari data yang dibuat sebelumnya dengan data yang di masukkan ke dalam parameter pref.

Jika datanya sama, maka akan memberikan nilai return berupa nama operatornya.

Tahap selanjutnya saya membuat form pada file activity_main.xml untuk memasukkan nomor, lalu saya juga membuat sebuah button untuk menjalankan perintah cek nomor yang di masukkan dan sebuah text view untuk menampilkan jenis operatornya.

Berikut isi dari file .xml yang saya buat.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <LinearLayout
        android:id="@+id/up"
        android:layout_width="match_parent"
        android:layout_height="match_parent">


        <EditText
            android:id="@+id/phone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:inputType="phone" />
        <Button
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Cek" />
    </LinearLayout>
    <LinearLayout
        android:layout_centerVertical="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <TextView
            android:id="@+id/operator"
            android:text="Test"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    </LinearLayout>

</RelativeLayout>

Ok, kembali lagi pada file MainActivity.java
Karena pada file .xml nya sudah di tambahkan beberapa element, maka kita perlu mendefinisikan element - element tersebut di MainActivity.java tersebut.
Saya mendefinisikan nya langsung di dalam method onCreate seperti berikut.

        final EditText no = findViewById(R.id.phone);
        Button button = findViewById(R.id.button);
        final TextView hasil = findViewById(R.id.operator);


Lalu saya juga membuat action onclick supaya nanti ketika button di klik, akan menjalankan pengecekan kepada nomor yang telah diberikan.

Masih di dalam onCreate, saya membuat onclik seperti berikut
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String noHp = no.getText().toString();
                if (noHp.length() > 4){
                    noHp = noHp.substring(0,5);
                }
                hasil.setText(cekOp(noHp));
            }
        });

Pada code diatas, saya membuat kondisi, jika panjang karakter dari nomor yang dimasukkan lebih dari 4, maka akan di potong dan di ambil hanya 5 karakter awalnya saja.

Lalu saya tampilkan hasilnya pada textview.

Sampai pada tahap ini, project sudah bisa di test, dan seharusnya sudah bisa melakukan pengecekan jenis operator berdasarkan nomor yang di masukkan.

Tetapi : ada beberapa kasus yang tidak sesuai
1. ketika di masukkan no dengan awal 0 , ie : 0823888 maka tidak akan ditemukan jenis operatornya.
2. ketika nomor yang di masukkan adalah nomor dengan operator smartfren maka tidak akan ditemukan juga jenis operatornya.

Penyebab pada no 1 adalah, karena ketika di cek, tidak ada nomor yang awalnya 0 pada data yang sudah di buat.
Lalu solusinya bagaimana ?
Cara yang saya lakukan adalah :
1. jika pengguna memasukkan angka 0 pada awal karakter, maka akan saya replace angka 0 tersebut dengan angka 62.

Kode pada onclik akan menjadi seperti ini jika algoritma tersebut saya lakukan.

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String noHp = no.getText().toString();
                if (noHp.length() > 4){
                    // jika panjang karakter lebih dari 4
                    if (noHp.substring(0,1).equalsIgnoreCase("0")){
                        // jika karakter pertamanya adalah 0
                        // maka replace angka 0 tersebut dengan 62
                        noHp = noHp.replace("0","62");
                    }
                    noHp = noHp.substring(0,5);
                }
                hasil.setText(cekOp(noHp));
            }
        });

Lalu bagaimana pada penyebab dari masalah no 2 ?
Penyebabnya adalah karena panjang karakter yang di cek adalah 5 karakter, sedangkan pada data yang merupakan data Smartfren, hanya ada 4 karakter yang diperlukan untuk dilakukan pengecekan.

Lalu bagaimana solusinya ?
Solusi yang saya tawarkan adalah seperti berikut :

Cek, apakah nomor yang diberikan mengandung 6288, jika iya, maka potong nomor yang diberikan tersebut, dan hanya ambil 4 karakter saja.
Jika tidak mengandung 6288 maka potong dan ambil 5 karakter saja.

Berikut full kode dari onclick setelah saya tambahkan algoritma yang baru saja saya bahas.

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String noHp = no.getText().toString();
                if (noHp.length() > 4){
                    // jika panjang karakter lebih dari 4
                    if (noHp.substring(0,1).equalsIgnoreCase("0")){
                        // jika karakter pertamanya adalah 0
                        // maka replace angka 0 tersebut dengan 62
                        noHp = noHp.replace("0","62");
                    }
                    if (noHp.contains("6288")){
                        noHp = noHp.substring(0,4);
                    }
                    else{
                        noHp = noHp.substring(0,5);
                    }
                }
                hasil.setText(cekOp(noHp));
            }
        });

Selesai, yey, project kecil ini akhirnya selesai.
Silahkan tinggalkan kritik dan sarannya pada kolom komentar dibawah.

Oh iya, ini saya lampirkan link git dari project yang baru saja dibuat. Link Project

Terimakasih banyak....

Wednesday, November 14

November 14, 2018

Create File (.txt dan .zip) PHP NATIVE

Kali ini saya sedang belajar membuat file .txt dan .zip dengan menggunakan bahasa pemrograman PHP. 
Dalam kasus saya, saya diminta untuk menyimpan beberapa file .txt yang kemudian di masukkan ke dalam file .zip supaya ketika ingin di download hanya perlu dilakukan sekali saja.

Ok, beginilah catatan dasar saya tentang bagaimana cara membuat file .txt dan memasukkannya kedalam file .zip

NOTE : Untuk membuat file .zip, perlu install library zip untuk phpnya terlebih dahulu supaya php bisa menjalankan perintah zip.

Pertama-tama saya membuat project baru dengan nama "file". Kemudian didalamnya saya membuat folder baru yang bernama "files" untuk menyimpan file yang akan dibuat nantinya. Dan lanjutkan dengan membuat file "createTxt.php" seperti berikut.

Click gambar untuk memperbesar gambar

setelah di isi kode yang seperti gambar diatas, lalu coba jalankan seperti berikut.
NOTE: namafile.txt itu akan menjadi nama file yang akan dibuat, ubahlah sesuai keinginan.

Click gambar untuk memperbesar gambar
setelah di jalankan, maka akan ada file dengan nama "namafile.txt" dengan isinya berupa text seperti gambar di bawah ini. 
Click gambar untuk memperbesar gambar

ok, selanjutnya saya membuat file baru "createZip.php" dan menuliskan beberapa kode seperti berikut. 
Click gambar untuk memperbesar gambar

lalu saya jalankan seperti sebelumnya dengan memanggil file createZip.php melalui browser.

NOTE: pada tahap diatas, penulis menuliskan nama file "namafile.txt" ketika proses addFile. pada tahap ini, harus di tuliskan secara jelas, dimana letak file "namafile.txt" tersebut. Dimana dalam kasus kali ini, file tersebut berada pada foder "files" maka dari itu penulis menyusunnya menjadi "files/namafile.txt".
Click gambar untuk memperbesar gambar

 dan, tadaaa..
file zip tercipta dengan file txt yang sebelumnya berada di dalamnya. Gambar di bawah adalah buktinya.

Click gambar untuk memperbesar gambar


Ok, catatan kali ini cukup sampai disini

Silahkan tinggalkan komentar terkait catatan saya kali ini.
Terimakasih banyak.

Tuesday, November 13

November 13, 2018

Delete data from database (MySQL) PHP NATIVE

Catatan ini adalah catatan lanjutan dari catatan sebelumnya, diharapkan membaca catatan sebelumnya terlebih dahulu di sini.

Ok, dari semua proses (Create, Read, Update, Delete merupakan proses yang paling mudah). kenapa saya katakan begitu ?
Langsung coba saja, dan rasakan perbedaannya dengan proses yang sebelumnya.


1. Buat file HapusCategory.php
Click gambar untuk memperbesar gambar
2. seperti biasa, saya import terlebih dahulu file Database.php nya ke dalam file HapusCategory.php ini.
Click gambar untuk memperbesar gambar
3. karena pada proses Edit, saya sudah menyisipkan id ke dalam link hapus, maka saya akan manfaatkan id tersebut sebagai patokan.
Click gambar untuk memperbesar gambar
4. tahap selanjutnya saya membuat query untuk hapus data dari database. Lalu saya tambahkan kondisi, dimana jika proses hapus sudah berjalan, maka akan kembali ke halaman BacaCategory.php

Click gambar untuk memperbesar gambar
5. SELESAI
Iya hanya sesingkat itulah tahapan untuk menghapus data dari database.

6.
Loh, katanya udah selesai ???
Daripada di bilang No Pic hoax, mending saya kasih pic nya nih, BUKTI...
Click gambar untuk memperbesar gambar
itu adalah gambar sebelum saya klik link Hapus.
Click gambar untuk memperbesar gambar
dan itu adalah penampakan setelah saya klik link hapusnya.


Ok, serial CRUD PHP NATIVE sampai selesai sampai disini.
Terimakasih banyak karena sudah tanpa sengaja membaca catatan saya ini.

Silahkan tinggalkan komentar di kolom bawah ya...

TERIMA KASIH BANYAK....

Monday, November 12

November 12, 2018

Edit data from database (MySQL) PHP NATIVE


Melanjutkan catatan yang sebelumnya (Read data from database (MySQL)), maka catatan kali ini adalah tentang Update data. Untuk proses update ini menurut saya adalah proses yang sedikit lebih rumit dari pada proses CRUD lainnya (Create, Read, Delete).

Saya menganggap proses kali ini agak rumit karena ada beberapa proses yang perlu di lakukan sekaligus. Yaitu proses Read juga perlu di terapkan di dalam proses ini.


daripada kebanyakan baca yang tidak di inginkan, mending langsung cekibrot.
sebelum memulai file proses edit, saya ada sedikit merubah file dari project yg sebelumnya.

Click gambar untuk memperbesar gambar
seperti yang terlihat dari gambar diatas, saya merubah file BacaCategory.php seperti yang saya tandai dengan kotak. dengan dirubahnya a href maka link akan menjadi seperti berikut.
Click gambar untuk memperbesar gambar
perhatikan pada link yang muncul di bagian bawah, ada angka 4 di ujungnya. Angka 4 itu adalah id dari data IPA. Link tersebut muncul jika kita mengarahkan kursor ke arah link Edit / Hapus.

Apa tujuannya ?
Tujuannya adalah, supaya data yang diubah benar-benar data yang sudah dipilih.


Ok, lanjutkan dengan membuat file baru dengan nama EditCategory.php, dan tambahkan tag html seperti berikut.

Click gambar untuk memperbesar gambar


seperti pada project sebelumnya, mari kita import Database.php ke dalam file EditCategory.php ini.
Click gambar untuk memperbesar gambar

ok, saatnya menggunakan id yang sudah dibuat di pembukaan tadi. Disini saya membuat kondisi, dimana jika id ada di url, maka akan masuk kondisi ini.
Click gambar untuk memperbesar gambar
setelah itu, saya tambahkan kode, untuk mengambil data category_buku yang id nya adalah id yang tertulis di url (dalam contoh ini, idnya 4). Lalu tampung data dari category_buku ke dalam variable $data.
selanjutnya, saya pindahkan tag html ke dalam kondisi if tadi. supaya hanya tampil jika ada id di urlnya.
Click gambar untuk memperbesar gambar
kemudian saya tampilkan nama category yang di dapat berdasarkan id tadi, ke dalam form. (tujuannya, supaya kita tau apa sih data sebelumnya yang ingin kita rubah ini).

Click gambar untuk memperbesar gambar
jika kode diatas di jalankan, maka akan menampilkan seperti berikut.
Click gambar untuk memperbesar gambar
seperti yang terlihat, data IPA tampil di dalam form. tujuannya seperti yang saya jelaskan sebelumnya, yaitu sebagai pemberitahu kita, bahwa data IPA lah yang ingin kita rubah.

setelah itu, saya lanjutkan dengan menambahkan form input baru, yang berguna sebagai penampung id.
Click gambar untuk memperbesar gambar
tujuannya adalah, supaya nanti ketika button di klik, maka form ini akan mengirimkan data, nama category dan id dari category yang ingin dirubah.
oh iya, karena button belum saya beri nama, maka saya tambahkan nama, menjadi seperti berikut.
Click gambar untuk memperbesar gambar
sekaligus saya buatkan kondisi, yang mana akan masuk kondisi ini jika tombol update di klik.
lalu di dalam kondisi ini saya tambahkan query untuk update data.

Click gambar untuk memperbesar gambar
pada gambar diatas, saya memberi penunjuk. maksud dari penunjuk tersebut adalah sebagai penanda, bahwa data yang di masukkan di query berasal dari apa yang ada di dalam form input tersebut. seperti type_category yang ada di dalam query akan menampung nilai yang dimasukkan pada type_query yang di dalam form.

ok, saya lanjutkan dengan merubah sedikit codenya, supaya nanti ketika aplikasi di jalankan, dan ketika data sudah terupdate, maka akan kembali ke halaman BacaCategory, maka saya rubah seperti berikut.
Click gambar untuk memperbesar gambar

Ok, time for test the code.

Click gambar untuk memperbesar gambar
saya merubah data dari yang awalnya adalah IPA menjadi IPA bukan IPS, kemudian saya tekan button Update. Dan hasilnya adalah
Click gambar untuk memperbesar gambar

Yeahhhh...
Halaman berpindah ke halaman BacaCategory.php, dan data yang tadinya IPA sekarang telah berubah menjadi IPA bukan IPS.



FYI : Tahapan dalam edit memang sedikit rumit, bahkan saya saja ketika mebuat kode tersebut, mengalami beberapa kali kegagalan. Tapi tetep inget ya, apapun yang kamu pelajari, tidak akan sama sekali tidak berguna. Jadi jangan menyerah ketika menghadapi error atau hasil yang tidak sesuai.

OK, proses edit sudah selesai, Terimakasih banyak.
Jangan lupa tinggalkan kritik dan sarannya di kolom komentar ya.

Terimakasih banyak.

Saturday, November 10

November 10, 2018

Read data from Database (MySQL) PHP NATIVE


Setelah sebelumnya saya menulis tentang (Create / Insert data ke database), maka sekarang saya menulis tentang bagaimana cara membaca data yang sudah di masukkan ke database (Tanpa harus buka phpmyadmin).

Ok, beginilah caranya saya membaca data dari database.
1. Buat file BacaCategory.php
Click gambar untuk memperbesar gambar

2. buat tag html berbentuk table. (supaya data yang ditampilkan nampak rapi)
Click gambar untuk memperbesar gambar

3. beginilah tampilannya sampai tahap ini.
Click gambar untuk memperbesar gambar

4. sekarang saya akan mengimport / memanggil file Database.php ke dalam file ini, supaya file ini bisa berkomunikasi ke database.
Click gambar untuk memperbesar gambar

5. Ok, selanjutnya saya coba membuat query untuk membaca dari database.
Click gambar untuk memperbesar gambar

6. sekarang saya coba jalankan.
Click gambar untuk memperbesar gambar
ohyeahhhhh...
Datanya muncullll...


Iya, begitulah cara untuk membaca data dari database.

7. Baiklah, karena dari halaman ini akan ada proses Edit dan Delete, maka saya menambahkan beberapa href untuk membuat link..
Click gambar untuk memperbesar gambar


8. maka hasilnya akan seperti ini.
Click gambar untuk memperbesar gambar
saya menambahkan link Tambah, yang mana ketika link di klik, dia akan menuju kehalaman Tambah data Category..

Ok, sekian cara saya membaca data dari database.
Terimakasih banyak
Oh iya, jangan lupa tinggalkan kritik dan sarannya di kolom komentar dibawah ya...

Friday, November 9

November 09, 2018

Create data into database (MySQL) PHP Native


Sesuai judulnya Create data. Maka catatan saya kali ini adalah catatan tentang bagaimana saya menyimpan data ke dalam database Mysql.

Sebelumnya saya sudah membuat database dan juga sudah membuat project dengan nama buku, dimana saya juga sudah membuat file untuk koneksi ke databasenya. Karena catatan kali ini adalah catatan lanjutan dari yang sebelumnya, maka dari itu, pada catatan ini saya menggunakan project yang sama, yaitu project buku.


Ok, ini adalah tahapan - tahapannya :
1. Buatlah file TambahCategory.php di dalam folder buku

Click gambar untuk memperbesar gambar

2. Isikan code HTML di dalamnya. seperti berikut

Click gambar untuk memperbesar gambar

dari gambar diatas, saya akan jelaskan sedikit
<input type="text" name="nama_category" >
dari tag itu, saya membuat form dengan type inputan text, dan form tersebut saya beri nama "nama_category".
Nama form ini tidak boleh menggunakan character spasi, maka dari itu saya menggunakan character underscore.

<button type="submit" name="simpan">Simpan</button>
dengan tag yang barusan, saya mebuat button / tombol dengan type submit.
type submit ini berguna supaya ketika tombol di klik, maka data form akan di angkut dan di kirim.
dan button ini saya beri nama "simpan".

3. Panggil file Database.php ke dalam TambahCategory.php

Click gambar untuk memperbesar gambar

$conn = new Database();
pada kode diatas, saya membuat object baru dan saya masukkan ke dalam variable $conn, sehinggal $conn bisa digunakan untuk memanggil function yang ada di dalam Database.php

$db = $conn->getConnection();
seperti yang saya jelaskan sebelumnya, $conn bisa memanggil function yang ada di dalam Database.php (getConnection()). jadi saya membuat variable baru dengan nama $db dan saya masukkan hasil dari $conn->getConnection(); ke dalam variable $db ini.

4. Tangkap data yang dikirim oleh form pada no 2.

Click gambar untuk memperbesar gambar
if(@isset($_POST['simpan']))
jika ada yang mengirim dengan nama simpan. dalam kasus ini, button lah yang saya beri nama simpan, yang artinya, jika tombol simpan di klik, maka akan masuk ke dalam kondisi ini.

$q = "INSERT INTO `category_buku` (`id_category`, `nama_category`)
  VALUES (NULL, :nama_category );";
kode di atas adalah perintah SQL untuk melakukan penyimpanan data ke dalam table.
perlu di perhatikan ":nama_kategory" adalah key yang saya gunakan untuk di ganti nilainya dengan data yang di dapat dari form.

$exe = $db->prepare($q);
persiapkan query yang sudah di buat, supaya siap di jalankan.

$exe->bindValue(":nama_category", $_POST['nama_category']);
cari ":nama_category" dan ganti nilainya dengan nilai yang didapat dari form dengan nama "nama_category", disni form dengan nama "nama_category" adalah form untuk memasukkan nama kategory.

if ($exe->execute())
query sudah di persiapkan, data sudah di masukkan, saatnya di eksekusi (dijalankan).
jika ketika di jalankan berjalan dengan lancar, maka tampilkan "Sukses", namun jika ternyata tidak. maka tampilkan "Gagal".

5. Testing.
Click gambar untuk memperbesar gambar
Itu adalah table category_buku yang kosong (sebelum saya coba jalankan kode saya)

Click gambar untuk memperbesar gambar


ini adalah tampilan hasil kodingan sebelumnya. disini penulis mencoba memasukkan "IPA" ke dalam form Nama Category buku.

Click gambar untuk memperbesar gambar

lalu klik button simpan. dan setelah itu akan muncul pesan "Sukses". dalam kasus ini penulis tidak mengalami kegagalan.
Click gambar untuk memperbesar gambar
ok, selanjutnya cek ke databasenya, apakah memang benar-benar sudah tersimpan datanya.
Click gambar untuk memperbesar gambar
yey, ternyata datanya benar-benar sudah masuk ke dalam database.

Ok, sekian untuk catatan tentang bagaiman caranya menginputkan data ke dalam database Mysql.

Terimakasih banyak
Silahkan tinggalkan komentarnya, karena komentar andalah saya bisa tau dimana kekurangan saya..
Sekali lagi, terimakasih banyak.