Minggu, 06 September 2015

Create Input data ke database dengan php

Mandailing Natal - Create Input data ke database dengan php - terasa aneh ya judulnya Create Input data ke database dengan php, lebih agak enak mungkin di dengar CRUD (cread read update delete) database pada pemrograman php, Create Input data ke database dengan php di buat aneh biar isinya berasa makin aneh.. kan gak masalah.. toh Create Input data ke database dengan php cuma belajar mendokumentasikan, kebetulan sebagai bahan tulisan juga. Selain CRUD bisa juga di sebut dengan INPUT LIHAT UBAH HAPUS data dengan php.


Creat Input data ke database dengan php - biarlah di sebut begitu saja. yang penting simple mudah dan tidak merepotkan. Atau mudahnya bolehlah di sebut juga cara Memasukkan Data kedalam mysql dengan php.

Nah soal input data kedalam database, tentunya kita harus mengerti dulu sedikit banyaknya soal HTML, ya bahasa markup yang terkenal itu lho, yah baiklah kalo tidak tau apa itu html, mandailing natal sebut aja kepanjangannya ya, HTML adalah Hypertext Markup Language. Bahasa markup yang di gunakan untuk melingkupi code dari bahasa php yang kita buat, ya pada dasarnya tampilan seluruh web mungkin boleh disebut di buat dengan bahasa html, dan css, plus java script, jquery dan lain-lainnya.  Kalo udah tau ya syukurlah,, saya juga tidak terlalu faham dengan cerita-cerita html dan saya tidak tertarik menceritakannya disini,, bisa tulisannya sampe minggu depan baru selesai kalau itu juga di ceritakan. Ok anggaplah anda telah mengerti itu apa html.

Pertama sekali sebelum membuat input data dari php ke mysql, baiknya di buat dulu database di webservernya, kebetulan pake appserv, kamu bisa buat tuh databasenya dari phpmyadmin appserv, lewat link berikut di browser kesayanganmu

http://localhost/phpmyadmin

Jika sudah, buat aja tampilannya seperti gambar berikut:

Nah gambar diatas artinya.
  • Buat database bernama teruna
  • buat tabel bernama data_siswa dengan field id_siswa, nisn_siswa, nama_siswa dan jangan lupa khusus untuk id_siswa activkan extra=auto_increment dan klik gambar kunci (PRIMARY KEY)
  • Klik simpan. 
Kemudian buat file koneksi.php di directory webserver yang kita mau, kebetulan disini di buat di folder/directory latihan, kemudian isikan file seperti berikut didalam koneksi.php

<?php
$host="localhost"; //alamat localhost
$user="root"; //user phpmyadmin
$password="12345"; //pass phpmyadmin
$db="teruna"; //nama database
$koneksi=mysql_connect($host,$user,$password) or die (mysql_error());
mysql_select_db($db, $koneksi) or die (mysql_error());
?>

Simpan file diatas dengan nama koneksi.php simpan di folder www appserv (webserver yang di gunakan) buka dari browser file yang disimpan tadi, ada error atau tidak. Kalau ada error silahkan di chek codenya dengan benar dan di sesuaikan dengan configurasi phpmyadmin dan mysql yang kita gunakan.

Bingung ya apa... kalo bingung ya wajar... www.mandailingantal.com juga pertama sekali mengenal php itu bingung juga.. karena kebingungang itulah makanya kita belajar bersama, sekalianlah buat saya berbagi sedikit dari sedikit yang saya tau.

$host="localhost"

Fungsinya itu variable yang mendeklarasikan server atau ip dari server databasenya, localhost boleh juga di ganti dengan ip loopback, yaitu angka 127.0.0.1 (ditulis angka 127.0.0.1) sebagai pengganti tulisan localhost.

$user="root";

Fungsinya variable $user="root", untuk mendeklarasikan user phpmyadmin yang di localhost

$password="12345";

fungsinya untuk mendeklarasikan password phpmyadmin dari webserver kita, kalau tidak pernah men-set password untuk phpmyadminnya ya kosongkan aja, kebetulan appserv saat di install diset passwordnya 12345 makanya variable $password="12345";

Kalau pake Xampp biasanya di kosongin aja, tergantung kamu deh.. sesuai webservernya aja ya..

$db="teruna";

fungsinya variabel $db="teruna", ya mendeklarasikan database apa yang ada di phpmyadmin kita, yang akan kita gunakan sebagai database penampung tabel database yang akan kita set nanti di input data yang kita buat, atau kita tampilkan ke browser apa isinya.

$koneksi=mysql_connect($host,$user,$password) or die (mysql_error());

$koneksi=mysql_connect($host,$user,$password) or die (mysql_error()) artinya koneksikan dong phpnya dengan mysql.. makanya mysql_connect dia, memerintahkan php untuk mengkoneksikan diri ke mysql dengan informasi user, password dan host yang kita set di variable atasnya

mysql_select_db($db,$koneksi);

nih artinya pilih database dengan informasi di variable $db;

Selanjutnya apa?

ya buat form inputnya dong pake html, makanya saya bilang sebelumnya harus mengerti sedikit soal html, biarpun tidak mengerti cobalah fahami sedikit kode html berikut:

<html>
    <head>
        <title>Input Data Siswa</title>
    </head>
<body>
<h1>Input data </h1>
<form action="tambah_data.php" method="POST">
<table>
    <tr>
        <td> Nisn </td>
        <td><input type="text" name="nisn_siswa" /> </td>
    </tr>
    <tr>
        <td> Nama </td>
        <td><input type="text" name="nama_siswa" /> </td>
    </tr>
    <tr>
        <td><input type="submit" name="ok" value="Tambah"></td>
    </tr>
</form>
</body>
</html>
simpan dengan nama input_data.php simpan di wwwnya appserv. Kemudian buat file baru bernama tambah_data.php

<?php
include('koneksi.php'); //fungsinya untuk memanggil halaman koneksi yang kita buat sebelumnya
$nisn=$_POST['nisn_siswa']; //memproses file yang dikirim dari browser ke php berdasar variable nisn_siswa
$nama=$_POST['nama_siswa']; //memproses file yang di kirim berdasar file html pada variabel nama_siswa

mysql_query("INSERT INTO data_siswa VALUES('','$nisn','$nama')");
echo "Sukses Tambah Data"; //pesan sukses/gagal tambah data
?>

simpan di folder yang sama dengan  koneksi.php, input_data.php, tambah_data.php  Kode inilah yang memproses inputan /ketikan di html dan mengirimkannya kedalam database.

Dengan kode sesingkat diatas, sebenernya kita sudah bisa memasukkan data kedalam database, namun masih banyak kekurangnanya. Mungkin kita tidak ingin ada data kosong didalam database, kita bisa menerapkan fungsi isset untuk memvalidasi apakah variable sudah terisi atau belum. Nah dengan fungsi ini kita harus mengerti sedikit lagi bahasa pemrograman php yaitu bagian kondisi if.

Logikanya untuk memvalidasi data diatas apakah variabel sudah terisi atau belum misalnya seperti ini. Apakah tombol Tambah sudah di klik atau Enter, jika sudah di klik maka input data kedalam database, jika variable nisn_siswa dan nama_siswa di tidak disi di form htmlnya, maka keluarkan pesan error yang mewajibkan user harus mengisinya.

Kalau menggunakan sedikit validasi sederhana yang menampilkan pesan error ketika form kosong, dan pesan sukses memasukkan kedatabase ketika form sudah terisi bisa menggunakan code seperti ini :

<?php
if(isset($_POST['ok']))
{
include('koneksi.php'); //fungsinya untuk memanggil halaman koneksi yang kita buat sebelumnya
$nisn=$_POST['nisn_siswa']; //memproses file yang dikirim dari browser ke php berdasar variable nisn_siswa
$nama=$_POST['nama_siswa']; //memproses file yang di kirim berdasar file html pada variabel nama_siswa
if(empty($nisn) || empty($nama)){
echo " Form tidak boleh ada yang kosong";
}
else
{
mysql_query("INSERT INTO data_siswa VALUES('','$nisn','$nama')");
echo "Sukses Tambah Data"; //pesan sukses/gagal tambah data

}
}
?>

Cara membaca kode diatas :

Jika tombol tambah /pastikan tombol tambah disentuh (kenapa dipasikan disentuh ?). Maka ingatlah satu hal bahwa, kondisi if else secara default memiliki nilai true (benar). Maknanya adalah jika tombol Tambah di sentuh, di enter, maka buka file koneksi.php kemudian tampung inputan yang di html kedalam variabel $nisn dan $nama, kemudian chek apakah viariabel $nisn dan $nama dikosongkan atau tidak, jika kosong keluarkan pesan Form tidak boleh ada yang kosong . Namun jika sebaliknya, simpan inputan yang di ketik di html kedalam database.

Perhatikan urusan nilai VALUES pada mysql_query yaitu bagian (' ','$nisn','$nama')");

Sebelum tulisan $nisn, ada tuh tanda kutip dua kali ' '  atau boleh di ganti dengan tulisan NULL. 
Pada bagian yang di warnai merah, harus di sesuaikan urutannya dengan kolom yang ada di tabel_siswa.  yaitu kolom ke berapa yang menampung nisn dan kolom ke berapa yang menampung nama, jangan terbalik seperti ini (' '. '$nama','$nisn) urusan ini sudah salah karena kolom database kita, di kolom pertama adalah id_siswa kolom kedua nisn_siswa dan kolom ketiga nama_siswa.

Mudah-mudahan tulisan ini bermanfaat, di lain kesempatan posting yang akan di buat, cara menampilkan isi database dengan php