Rabu, 12 Juni 2019

Ma Project! - Online Voting System
Trying to explain my project, hehe.


Halooooooo. Assalamualaikum.
Disini aku ingin menjelaskan cara kerja dari aplikasi berbasis web yang aku buat.
Yup! Betul. Dari judul bisa ditebak dong nama aplikasiku apa hehe. "Online Voting System"

Jadi, Online Voting System ini memiliki Beberapa fitur yang bisa digunakan, yaitu:
1. Menu "HOME"
Halaman ini, adalah halaman default dari aplikasi.

2. Menu "TENTANG SITUS"
Halaman ini berisi kalimat persuasif

3. Menu "KONTAK SAYA"
Halaman ini berisi kontak yang dapat dihubungi jika ada pertanyaan mengenai sistem aplikasi tersebut

4. Menu "DAFTAR"
Setelah melakukan pengisian data di menu daftar ini, user secara otomatis diarahkan ke halaman login

5. Menu "LOGIN"

Setelah mengisikan username dan password pada form yang tersedia, user akan diarahkan pada halaman berikutnya, yaitu:

a. User sebagai "VOTER" / "STUDENT" / "PEMILIH"

Maksudnya, user tidak memiliki hak untuk mengedit data, hanya sebagai partisipan.
Halaman berikutnya adalah sebagai berikut:
 #Halaman Vote

Di halaman ini berfungsi untuk voter memilih kandidat yang ingin di pilih. Sebelumnya, untuk mengenal kandidat lebih dalam lagi agar tidak salah pilih pemimpin, voter bisa melihat profil dari para kandidat.
Voter hanya bisa memilih 1 kali, tidak boleh lebih.
Setelah voter memilih pilihannya, maka secara otomatis votecount yang didapat dari kandidat yang dipilih akan masuk ke database, dan ditampilkan di halaman kandidat yang bisa diakses voter untuk melihat hasilnya.

    #Halaman Pertanyaan

Yakni halaman yang dikhususkan bagi para voter untuk menanyakan secara langsung kepada kandidat, tentang hal-hal yang berkaitan dengan berlangsungnya pemilu atau visi misi mereka kedepannya.

  #Halaman Ubah Password
Setelah mengisiskan data yang diperlukan untuk ubah password, maka secara otomatis password user akan berubah dan tersimpan di database.

b. User sebagai "ADMINISTRATOR"

Maksudnya user memiliki hak atau kekuasaan untuk mengedit dan memperbarui hal hal yang ada pada web tersebut tanpa melakukan adanya kecurangan
Halamannya sebagai berikut:
   #Halaman Admin
Terdapat menu pencarian, yang dapat digunakan untuk mencari data user yang telah mengakses web tersebut.
Misal, admin mencari dengan kata kunci "Feby". Maka akan muncul seperti berikut.
Dan pada halaman admin terdapat Poin peringkat dan username. Hal itu bertujuan untuk mengubah status user menjadi apa yang dikehendaki admin.
Misal, saya memilih Feby untuk diubah statusnya menjadi Pemilih / student. Maka bisa dicek di Halaman "Lihat Pengguna"

   #Halaman Lihat Pengguna

Disitu terdapat data para voter, kandidat, dan voter yang telah login beserta statusnya. Jika voter tersebut diubah statusnya menjadi Deaktifasi, maka voter tersebut tidak bisa login.
Tampilannya sebagai berikut

Baik password atau username tidak tepat. Karena akun sudah di deaktifasi / banned.


Untuk Tampilan dari databasenya adalah sebagai berikut :
1. Daftar tabel di database "poll"

2. Tabel "candidate"
3. Tabel "login"
4. Tabel "questions"
5. Tabel "student"


Akhirnyaaa, dari sekian lama bahkan berminggu-minggu untuk menyelesaikan project ini. Jadi juga aplikasi sederhana dan masih abal-abal. hehe.
Aplikasi ini dibuat dalam kurun waktu yang sangat mepet dan tidak terkira meski timelinnya lama. WKWKWK dasar aku.
Sekian dulu ya tentang penjelasan project PHP-SQL yang aku buat, semoga bisa membantu dalam menginspirasi. Koding ga aku share karena sayang wkwk. iya sayang sama kalian biar kalian bisa berkreasi dalam dunia PHP-SQL ini. asik loh. sungguh!
Bahkan temen aku, aplikasinya keren keren huhu T_T
Ada yang pake hardware, wagelaseh. Tapi gapapa, ini aja selesai aku bangga warbayazah wkwk.
Nah sekian dulu ya teman-teman.. See U!

Sabtu, 11 Mei 2019

BELAJAR PHP (PART 18) : Upload Image dengan PHP-SQL

Upload Image using PHP-SQL

Assalamualaikum teman ><
Alhamdulillah sudah memasuki Bulan Ramadhan, suasananya beda banget ga sih sama bulan-bulan lainnya.
Buat yang lagi merantau, semangat yaa!❤

Sekarang aku mau ngasih materi sekaligus info beserta contoh tentang bagaimana cara meng-upload gambar dengan menggunakan PHP-SQL. Masa mungkin sih? Ya, mungkin dong. Di dunia gaada yang ga mungkin wkwk.

Yuk kenalan dulu apa aja yang harus kamu ketahui tentang "upload gambar ini".

Upload File?

Ada dua teknik yang kerap digunakan dalam menyimpan gambar di database. Teknik pertama yaitu dengan cara menyimpan gambar dengan type Blob/Longblob. Sedangkan teknik yang kedua yaitu dengan cara menyimpan nama file gambarnya saja kemudian memindahkan filenya (gambar) kedalam direktori yang telah ditentukan yaitu istilahnya Upload. 
Sebenarnya Upload File disini adalah upload file biasa, berupa gambar yang ukuran/ekstensi nya dapat ditentukan sesuai kemauan kita agar tidak menyalahi aturan. Bedanya upload gambar ini dengan upload gambar yang lain adalah tentang penggunaan PHP dalam programnya, yang nanti saat setelah diupload nama filenya akan masuk pada database yang ada.

Langsung aja yuk ke tahap membuatnya ;)

1. Membuat database dengan nama "photo", dengan nama table "upload". Lalu mengisikan record dengan isi "id_file" dan "nama_file".


2. Lalu membuat folder "file" yang diletakkan satu folder dengan program yang akan dijalankan.

3. Membuat file koneksi.php


4. Membuat file index.php

5. Membuat file aksi.php



6. Jalankan form pada localhost/namafolder
Tampilan awal form

Setelah memilih gambar yang mau di upload

7. Maka hasilnya akan seperti berikut



8. Lalu Cek isi folder "file" yang sudah dibuat tadi
Isi sebelum gambar di upload

Isi setelah gambar di upload

 9. Dan Cek juga table pada database, lihat perubahannya.
Sebelum di upload

Setelah di upload


Nah, bagaimana? Apa ada yang berbeda dari form sebelumnya?
Yup! benar. pada form atau file "index.php" terdapat tambahan atribut baru yaitu:
enctype="multipart/form-data" yang jika ditulis lengkap adalah sebagai berikut : <form action="aksi.php" method="post" enctype="multipart/form-data">
yang mana atribut tersebut berfungsi untuk memberi instruksi pada PHP untuk mengupload gambar.
juga ada fungsi moved_uploaded_file() yang berfungsi untuk mengupload dengan berbagai variabelnya.

Sekian dulu yaa penjelasan materi upload gambar menggunakan PHP-SQL ini, semoga bermanfaat dan bias jadi bahan pencerahan. aamiin :)
SeeU bae!

Sabtu, 27 April 2019

BELAJAR PHP (PART 17) : Hapus Data dengan PHP-MySQL

Konsep utama dari proses penghapusan data MySQL dengan PHP adalah menjalankan query SQL DELETE FROM … pada script PHP tersebut. 

Untuk lebih jelasnya konsep tersebut, kita langsung terapkan pada studi kasus.
Sebagai studi kasus, kita ambil sampel yaitu tentang data mahasiswa.
Misalkan kita memiliki tabel mahasiswa sebagai berikut:
nim           varchar(5)        primary key
nama        varchar(30)
alamat      text
sex           varchar(1)
tgllahir     date 


Studi Kasus 1
Pada studi kasus pertama ini, kita akan membuat script hapus mahasiswa menggunakan POST method. 

Adapun skenarionya adalah sebagai berikut. User diminta memasukkan NIM mahasiswa yang  akan  dihapus  melalui  sebuah  form.  Selanjutnya  script  akan  menghapus  data mahasiswa sesuai NIM yang ingin dihapus tadi. Namun, bila NIM yang akan dihapus tidak ada dalam database, maka akan muncul pesan bahwa data tersebut tidak ada. 

Berikut ini adalah tampilan script yang akan kita buat dalam studi kasus 1.
Berikut data programnya.
<h1>Hapus Data Mahasiswa</h1>
<!-- Form untuk memasukkan nim mahasiswa yang mau dihapus -->
<form method="post" action="<?php $_SERVER['PHP_SELF'] ?>?proses=hapus">
Masukkan NIM <input type="text" name="nim"> <input type="submit" name="submit" value="Submit">
</form>
<?php
// koneksi ke mysql mysql_connect("localhost", "…", "…"); mysql_select_db("…");
if ($_GET['proses'] == "hapus")
{ // bagian ini akan dijalankan ketika proses SUBMIT dari form
$nim = $_POST['nim'];  // membaca NIM yang dimasukkan dalam form
// mengecek keberadaan data mahasiswa dengan NIM sesuai yang // dimasukkan dalam form
$query = "SELECT count(*) as jum FROM mahasiswa WHERE nim = '$nim'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);
// jika jumlah mahasiswa ber NIM tersebut tidak ada, maka muncul keterangan
if ($data['jum'] == 0) echo "<p>Data yang akan dihapus tidak ada</p>"; else { // jika ada, maka lakukan penghapusan $query = "DELETE FROM mahasiswa WHERE nim = '$nim'"; $hasil = mysql_query($query); }
}
// menampilkan data semua mahasiswa
$query = "SELECT * FROM mahasiswa";
$hasil = mysql_query($query);
echo "<table border='1'>"; echo "<tr><th>NIM</th><th>Nama Mhs</th><th>Alamat</th><th>Sex</th><th>Tgl Lahir</th></tr>"; while ($data = mysql_fetch_array($hasil))
{
    echo "<tr><td>".$data['nim']."</td><td>".$data['nama']."</td> <td>".$data['alamat']."</td><td>".$data['sex']."</td> <td>".$data['tgllahir']."</td></tr>";
}
echo "</table>"; ?> 


Studi Kasus 2
Untuk  studi  kasus  yang  kedua  ini,  kita  akan  lakukan  penghapusan  data  mahasiswa melalui GET method atau melalui link berparameter. Link ini nanti akan diletakkan di setiap baris data mahasiswa. 

Bentuk link berparameter yang nanti akan digunakan untuk menghapus data adalah 

http://.../hapus02.php?proses=hapus&nim=xxx
dengan ‘xxx’ adalah NIM mahasiswa yang akan dihapusnya. 

<h1>Hapus Data Mahasiswa</h1>
<?php
// koneksi ke mysql mysql_connect("localhost", "…", "…"); mysql_select_db("…");
if ($_GET['proses'] == "hapus")
{ // bagian ini akan dijalankan ketika link hapus diklik (parameter proses=hapus)
// membaca NIM dari URL berparameter $nim = $_GET['nim'];
// mengecek keberadaan data mahasiswa dengan NIM // sesuai yang dimasukkan dalam form $query = "SELECT count(*) as jum FROM mahasiswa WHERE nim = '$nim'"; $hasil = mysql_query($query); $data  = mysql_fetch_array($hasil);
// jika jumlah mahasiswa ber NIM tersebut tidak ada, maka muncul keterangan if ($data['jum'] == 0) echo "<p>Data yang akan dihapus tidak ada</p>"; else {
// jika ada, maka lakukan penghapusan $query = "DELETE FROM mahasiswa WHERE nim = '$nim'"; $hasil = mysql_query($query);
}
}
// menampilkan data semua mahasiswa & link untuk menghapus
$query = "SELECT * FROM mahasiswa"; $hasil = mysql_query($query);
echo "<table border='1'>"; echo "<tr><th>NIM</th><th>Nama Mhs</th><th>Alamat</th><th>Sex</th><th>Tgl Lahir</th><th>Proses</th></tr>"; while ($data = mysql_fetch_array($hasil)) { echo "<tr><td>".$data['nim']."</td><td>".$data['nama']."</td> <td>".$data['alamat']."</td><td>".$data['sex']."</td> <td>".$data['tgllahir']."</td> <td><a href='".$_SERVER['PHP_SELF']."?proses=hapus&nim=".$data['nim']."'> Hapus</a></td></tr>"; } echo "</table>"; ?>


Sekian Materi mengenai "Hapus Data PHP-MySQL". Semoga bermanfaat^^
BELAJAR PHP (PART 16) : Update PHP-MySQL

Update Data dengan PHP - MySQL 



Proses  update  suatu  data  dengan  menggunakan  script  PHP  dan  MySQL  biasanya memiliki mekanisme sebagai berikut: 

1. Tampilkan list data terlebih dahulu Buat  sebuah  link  pada  setiap  baris  data  yang  menuju  proses  update.  
2. Link tersebut memuat sebuah parameter yang di dalamnya terdapat value yang nantinya digunakan sebagai acuan dalam proses update datanya. Selanjutnya  bila  link  tersebut  diklik  akan  muncul  form  berisi  data  yang  akan diedit.
3. Dalam  melakukan  proses  update  data,  pada  prinsipnya  adalah  menjalankan  query update pada SQL nya. 

UPDATE namaTabel SET namafield = value WHERE … 

Sebagai contoh, kita akan mengupdate data mahasiswa, dimana tabel untuk menyimpan data mahasiswanya berbentuk seperti di bawah ini 

nim              varchar(5)                  primary key
nama           varchar(30)
alamat         text
sex              varchar(1)
tgl lahir       date

Catatan:  Untuk  membuat  data  awal  Anda  bisa  mengisikannya  langsung  ke  MySQL dengan phpMyAdmin atau membuat script PHP untuk memasukkan datanya. Sesuai  dengan  mekanisme  di  atas,  maka  langkah  pertama  kita buat  terlebih  dahulu script untuk menampilkan list datanya. Dalam script list ini, data akan disajikan dalam bentuk  tabel  dengan  6  buah  kolom.  Lima  kolom  pertama  untuk  menampilkan data semua fieldnya, sedangkan kolom ke-6 untuk meletakkan link untuk editnya.

Berikut list.php
<?php
mysql_connect("localhost", "root", "root");
mysql_select_db("data");
// query SQL untuk memunculkan semua mahasiswa
$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);
echo "<table border='1'>";
echo "<tr><td>NIM</td>
<td>Nama Mahasiswa</td>
<td>Alamat</td> <td>Sex</td>
 <td>Tgl Lahir</td>
 <td>Action</td></tr>";
 while ($data = mysql_fetch_array($hasil))
 {
     echo "<tr><td>".$data['nim']."</td>
     <td>".$data['nama']."</td> <td>".$data['alamat']."</td> <td>".$data['sex']."</td> <td>".$data['tgllahir']."</td> <td><a href='edit.php?nim=".$data['nim']."'>Edit</a></td></tr>";
}
echo "</table>";
?>

Tampilannya Sebagai Berikut:

Langkah selanjutnya kita buat script edit.php yang nantinya akan memunculkan form edit  sekaligus  data  mahasiswa  yang  akan  diedit.  Mungkin  yang  menjadi  pertanyaan adalah bagaimana cara memunculkan data mahasiswa yang akan diedit? Dengan menggunakan query SELECT dengan nim sebagai syaratnya. Dalam hal ini nim yang ada dalam link edit lah yang nantinya akan digunakan sebagai syarat. 

SELECT * FROM mhs WHERE nim = …; 

file edit.php



<?php
mysql_connect("localhost", "root", "root");
mysql_select_db("data");
$nim = $_GET['nim'];
$query = "SELECT * FROM mhs WHERE nim = '$nim'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);
echo "<form method='post' action='update.php'>";
echo "<table>";
echo "<tr><td>NIM</td><td>:</td> <td><input type='text' name='nim' value='".$data['nim']."'></td></tr>"; echo "<tr><td>Nama Mahasiswa</td><td>:</td> <td><input type='text' name='nama' value='".$data['nama']."'></td></tr>"; echo "<tr><td>Alamat</td><td>:</td> <td><textarea name='alamat'>".$data['alamat']."</textarea></td></tr>";
echo "<tr><td>Sex</td><td>:</td> <td><input type='radio' name='sex' value='L'> Laki-Laki <input type='radio' name='sex' value='P'> Perempuan</td></tr>";
echo "<tr><td>Tgl Lahir</td><td>:</td><td> <select name='tgl'>";
for ($i=1; $i<=31; $i++)
{
    echo "<option value='".$i."'>".$i."</option>";
}
    echo "</select> <select name='bln'>";
    for ($i=1; $i<=12; $i++)
{
    echo "<option value='".$i."'>".$i."</option>";
}
echo "</select> <select name='thn'>";
for ($i=1980; $i<=1997; $i++)
{
    echo "<option value='".$i."'>".$i."</option>";
}
echo "</select> </td></tr>";
echo "</table>";
echo "<input type='submit' name='submit' value='Submit'>";
echo "</form>";
?>


Catatan:
Untuk keperluan edit data nim, script di atas menggunakan komponen textbox. Demikian pula edit data nama mahasiswa. Sedangkan untuk alamat, script di atas menggunakan komponen textarea. Untuk edit jenis kelamin, kita menggunakan komponen radiobutton Untuk edit tanggal lahir mahasiswa, kita menggunakan 3 komponen combobox yang  masing-masing  digunakan  untuk  tanggal,  bulan  dan  tahun.  Option  dari masing-masing combobox digenerate otomatis dengan looping FOR. 


Berikut Contoh Update Data PHP-SQL
1. Membuat file dengan nama edit.php


2. Membuat file dengan nama list.php


3. Membuat file dengan nama update.php

4. Membuat Database di localhost/phpmyadmin dengan nama "registrasi" dan nama table "datamahasiswa". seperti gambar berikut.

5. Mengis field table dengan nama record sebagai berikut

6. Lalu, buka loalhost biasa, localhost yang terhubung dengan "htdocs". Maka akan muncul tampilan seperti gambar

7. Mengisi table yang ada dengan UPDATE data terbaru. sebagai berikut
8. Lalu klik "Submit", dan hasilnya akan seperti berikut

9. Saat mengeklik "cek" maka akan tampil seperti berikut


10. Lalu cek kembali table yang ada pada database, apakah sudah ter-update atau belum.
Dan hasilnya adalah..
Yang semula alamatnya "MALANG" dan tanggal lahirnya "1996-04-14". Setelah di update alamatnya berisi "Mojokerto" dan tanggal lahirnya menjadi "2000-06-01" sesuai isi form.

Nah, begitu caranya update data menggunakan PHP-SQL.
Sekian dulu, penjelasan singkat mengenai Update Data menggunakan PHP-MySQL ^^
Semoga bermanfaat dan menambah wawasan kalian :)
 Seeu!