Senin, 22 April 2019

Konsep INSERT Data dengan PHP


Konsep INSERT Data dengan PHP


Setelah Anda mengenal beberapa bentuk perintah SQL untuk memanipulasi atau mengolah   data   di   MySQL,   pada   bab   ini   Anda   akan   diperkenalkan   bagaimana menerapkan konsep tersebut yang terintegrasi dengan script PHP.
Pada bab ini terlebih dahulu akan diperkenalkan bagaimana konsep inserting data ke
MySQL melalui PHP.

Koneksi PHP ke MySQL

Sebelum kita membahasnya  lebih lanjut tentang inserting data, terlebih dahulu akan disinggung tentang bagaimana caranya melakukan koneksi dari PHP ke MySQL.
Perintah PHP untuk koneksi ke MySQL adalah:
mysql_connect(‘nama host’, ‘nama user’, ‘password’);
mysql_select_db(‘nama db’); Keterangan:
Nama  Host  :  nama  komputer  di  mana  MySQL  nya  berada,  kalo  berada  di komputer itu sendiri maka nama hostnya: ‘localhost’, bisa juga diberi nomor IP dari komputernya.
Nama User : nama user yang memiliki hak akses ke MySQL nya Password : password dari nama user yang punya hak akses ke MySQL Nama DB : nama database yang akan dipilih

Contoh:
Berikut  ini  adalah  script  untuk  melakukan  koneksi  ke  MySQL  dengan  nama  host:
localhost, user : root, password: root, dan nama database: contoh

<?php
mysql_connect('localhost', 'root', 'root');
mysql_select_db('contoh');
?>

Sebaiknya script di atas kita simpan dalam file script tersendiri, misalkan koneksi.php. Selanjutnya  script  tersebut  kita  includekan  ke  dalam  script  lain  yang  di  dalamnya terdapat query-query SQL.

Menjalankan Query SQL di PHP

Setelah kita melakukan koneksi dari PHP ke MySQL, selanjutnya kita bisa menjalankan query melalui script PHP.
Untuk menjalankan query SQL di PHP, kita gunakan perintah mysql_query(query);
Contoh:
Berikut ini contoh script PHP untuk menjalankan query SQL untuk insert data ke tabel
MySQL

<?php

include "koneksi.php";

$query = "INSERT INTO namaTabel(field1, field2) VALUES(value1, value2) ";
mysql_query($query);

?>

Selanjutnya akan dibahas bagaimana  mengimplementasikan  konsep inserting data ke
MySQL melalui script PHP yang diintegrasikan dengan form input

Studi Kasus
Dalam studi kasus ini akan dicontohkan bagaimana cara membuat form registrasi yang di  dalamnya  terdapat  beberapa  jenis  komponen  input  seperti  textbox,  radiobutton combo box, checkbox dan textarea.

Form  tersebut  akan  diterapkan  dalam  kasus  registrasi  peserta  suatu  seminar  secara online.
Untuk keperluan tersebut terlebih dahulu kita buat tabelnya. Nama Tabel : peserta
Field

id namaPeserta tglLahir tmptLahir
sex
alamat tglDaftar informasi

integer varchar(30) date varchar(30) varchar(1) text
date
text

auto increment                         primary key

Keterangan:
Field  ‘informasi’  digunakan  untuk  menyimpan  keterangan  darimana  peserta  seminar mendapatkan informasi tentang seminar (dari surat kabar, televisi, atau dari teman).
Field ‘id’ diset bertipe data integer dan berupa auto increment. Maksud dari auto increment   adalah   secara   otomatis   akan   muncul   nomor   urut   begitu   data   baru dimasukkan ke dalam tabel.
Field dengan tipe data DATE, harus berformat YYYY-MM-DD (tahun-bulan-tgl) Selanjutnya kita siapkan form untuk input data peserta seminarnya registrasi.php
<html>
<head>
<title>Registrasi Peserta Seminar</title>
</head>
<body>
<h1>Registrasi Peserta Seminar</h1>
<form method="post" action="submit.php">
<table>
<tr><td>Nama
/></td></tr>

Lengkap</td><td>:</td><td><input     type="text"     name="nama"
<tr><td>Alamat</td><td>:</td><td><textarea name="alamat"></textarea></td></tr>
<tr><td>Tempat  Lahir</td><td>:</td><td><input  type="text"  name="tmptLhr"
/></td></tr>
<tr><td>Tanggal Lahir</td><td>:</td>
<td>
<select name="tgl">
<?php
for($i=1; $i<=31; $i++)
{


echo "<option value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="bln">
<?php
for($i=1; $i<=12; $i++)
{
echo "<option value='".$i."'>".$i."</option>";
}
?>
</select>
<select name="thn">
<?php
for($i=1950; $i<=1990; $i++)
{
echo "<option value='".$i."'>".$i."</option>";
}
?>
</select>
</td>
</tr>
<tr><td>Jenis Kelamin</td><td>:</td><td><input type="radio" name="sex" value="L" /> Laki-laki <br/><input type="radio" name="sex" value="P" /> Perempuan</td></tr>
<tr><td>Tahu informasi seminar dari mana?</td><td>:</td><td><input type="checkbox"  name="info1"   value="TV"  />  Televisi<br  /><input  type="checkbox"
name="info2"      value="Koran"     />     Surat     Kabar<br     /><input name="info3"  value="Teman" /> Teman</td></tr>

type="checkbox"
<tr><td></td><td></td><td><input value="Submit" /></td></tr>
</table>
</form>
</body>
</html>

type="submit"             name="submit"

Keterangan:


Pusing melihat script diatas? Jangan khawatir, script nantinya akan disertakan melalui email untuk dipelajari.

Form di atas akan tampak seperti di bawah ini begitu dibuka di browser


Setelah kita buat form registrasinya, selanjutnya kita buat form untuk proses penyimpanan data pesertanya.

submit.php

<?php

include "koneksi.php";

$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$tmptLhr = $_POST['tmptLhr'];
$tglLhr = $_POST['thn']. "-".$_POST['bln']. "-".$_POST['tgl'];   // membentuk format thn- bln-tgl
$sex = $_POST['sex'];
$tglDaftar = date("Y-m-d");
bln-tgl

// membaca tanggal sekarang (recent date) format thn-

// menggabungkan informasi darimana peserta mendapatkan info tentang seminar

$info = $_POST['info1']. " ".$_POST['info2']. " ".$_POST['info3'];

$query = "INSERT INTO peserta (namaPeserta, tglLahir, tmptLahir, sex, alamat, tglDaftar, informasi) VALUES ('$nama', '$tglLhr', '$tmptLhr', '$sex', '$alamat', 'tglDaftar',
'$info' )";

$hasilQuery = mysql_query($query);

if ($hasilQuery) echo "Data sudah tersimpan ke database";
else echo "Penyimpanan data gagal";

?>



Berikut adalah contoh memasukan program dari php ke mysql
1.      Buku tamu
Program
//Tugas_1.php
<html>
    <head>
    <title>GUESTBOOK</title>
    </head>
    <body>
    <h1> GUESTBOOK </h1>
    <form method="POST" action="submit.php">
        <table>
            <tr>
                <td> Nama pengisi </td>
                <td> : </td>
                <td>
                    <input type="text" name="nama">
                </td>
            </tr>
            <tr>
                <td> Email </td>
                <td> : </td>
                <td>
                    <input type="text" name="email">
                </td>
            </tr>
            <tr>
                <td>Situs Web </td>
                <td> : </td>
                <td>
                    <input type="text" name="situs">
                </td>
            </tr>
            <tr>
                <td> komentar </td>
                <td> : </td>
                <td>
                    <textarea name="komentar"> </textarea>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="submit" name="submit" value="submit">
                </td>
            </tr>
           
        </table>
    </form>
    </body>
</html>

//koneksi.php
<?php
    mysql_connect('localhost', 'root', '');
    mysql_select_db('dbtamu');
?>

//submit.php
<?php

include "koneksi.php";

$nama = $_POST['nama'];
$email = $_POST['email'];
$situs = $_POST['situs'];
$tgl = date("Y-m-d");
$komentar = $_POST['komentar'];

$query = "INSERT INTO bukutamu (id, Nama, Email, Website, Tanggal, Komentar) VALUES ('', '$nama', '$email', '$situs', '$tgl', '$komentar')";
$hasilQuery = mysql_query($query);

if ($hasilQuery)
echo "Data sudah tersimpan ke database";
else
echo "Penyimpanan data gagal";

?>


Hasil
//Mengisi data menggunakan form


//Data berhasil disimpan


//isi database


2.      Form Pendaftaran Mahasiswa
Program
//form.php
<h1>Form Registrasi Mahasiswa Baru</h1>
<form method="post" action="submit.php">
    <table border="0">
        <tr>
            <td>Nama Mahasiswa</td>
            <td>:</td>
            <td><input type="text" name="nama"></td>
        </tr>
        <tr>
            <td>Alamat Mahasiswa</td>
            <td>:</td>
            <td><textarea name="alamat"> </textarea></td>
        </tr>
        <tr>
            <td>Jurusan</td>
            <td>:</td>
            <td>
                <select name="jurusan">
                    <option value="A"> KEDOKTERAN </option>
                    <option value="B"> TEKNIK </option>
                    <option value="C"> MIPA </option>
                </select>
            </td>
        </tr>
        <tr>
            <td>Tempat Lahir</td>
            <td>:</td>
            <td><input type="text" name="tempat"></td>
        </tr>
        <tr>
            <td>Tanggal lahir</td>
            <td>:</td>
            <td>
                <select name="tgl">
                    <?php
                        for($i=1; $i<=31; $i++){
                            echo "<option value='".$i."'>".$i."</option>";
                        }
                    ?>
                </select>
                <select name="bln">
                    <?php
                        for($i=1; $i<=12; $i++){
                            echo "<option value='".$i."'>".$i."</option>";
                        }
                    ?>
                </select>
                <select name="thn">
                    <?php
                        for($i=1980; $i<=2002; $i++){
                            echo "<option value='".$i."'>".$i."</option>";
                        }
                    ?>
                </select>
            </td>
        <tr>
            <td>No Telepon</td>
            <td>:</td>
            <td><input type="text" name="no"></td>
        </tr>
        <tr>
            <td></td>
            <td></td>
            <td><input type="submit" name="submit" value="Submit"></td>
        </tr>
    </table>
</form>

//submit.php
<?php
    $nim = $_POST['nim'];
    $nama = $_POST['nama'];
    $alamat = $_POST['alamat'];
    $kodejurusan = $_POST['jurusan'];
    $tempat = $_POST['tempat'];
    $tanggal = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];
    $no = $_POST['no'];
   
    mysql_connect("localhost", "root", "");
    mysql_select_db("registrasi");

    $query = "SELECT max(NIM) as maxnim FROM formulir WHERE NIM LIKE '$kodejurusan%'";
   
    $hasil = mysql_query($query);
    $data  = mysql_fetch_array($hasil);

    $maxnim = $data['maxnim'];
    $noUrut = (int) substr($maxnim, 5, 4);

    $noUrut++;

    $newnim = $kodejurusan."-09-". sprintf("%04s", $noUrut);

    switch($kodejurusan){
        case A : $jurusan="KEDOKTERAN";
            break;
        case B : $jurusan="TEKNIK";
            break;
        case C : $jurusan="MIPA";
            break;
    }

    $query = "INSERT INTO formulir (NIM, NamaMahasiswa, Alamat, Jurusan, TempatLahir, TanggalLahir, NoTelepon) VALUES ('$newnim', '$nama', '$alamat', '$jurusan', '$tempat', '$tanggal', '$no')";
    $hasil = mysql_query($query);

    if ($hasil)
        echo "<h1>Selamat Datang Mahasiswa Baru</h1>";
    else {
        echo "<h1>Input data gagal</h1>";
        echo "<a href='form.php'>Input Data</a>";
    }
       
?>

Hasil
Form


Tersimpan


Database