Trik Membuat Fungsi Simpan Data Dengan Mudah Di PHP

posted in: PHP & FRAMEWORK | 0

php

Efisiensi membuat skrip mungkin akan anda butuhkan ketika anda sudah bekerja dengan banyak module dan banyak skrip pada sistem anda. Efisiensi bisa kita artikan dari sisi jumlah baris dan logika, bisa juga menrjemahkan input dan ouput dengan sangat singkat. Bagi anda yang ingin sedikit tune up untuk proses menyimpan dan mengupdate data anda bisa menggunakan sedikit trik ini. Trik sederhana ini mungkin akan sedikit menghemat waktu anda dalam membuat program.

Trik pada point ini mencakup beberapa hal :

  • Membuat nama Form sama dengan nama Field database sehigga kita tidak perlu mendeklarasikan variabel satu persatu untuk proses menyimpan.
  • Membuat fungsi untuk menyimpan dengan mengirim aray dalam argument sehingga akan memudahkan anda untuk menggunakan fungsi ini untuk menyimpan data.
  • Membuat fungsi untuk memeritahkan perintah update melalui tahap-tahap di atas

Oke biar tidak binggung mari kita langsung coba.. Ohh ya mungkin nanti ada pertanyaan bagaimana cara menampilkan data yang sudah tersimpan.. mungkin pada tulisan ini tidak akan saya bahas.. saya hanya fokus pada cara mengirim data kemudian menyimpanya kedalam database

Langkah 1

Pertama buatlah tabel untuk menyimpan data, silahkan berkreasi dengan tabel pilihan yang anda suka tidak harus seperti dibawah ini agar anda bisa explore lebih banyak. Tapi tetap ingat tetap buat kolom id sebagai key untuk mempermudah proses update data.

CREATE TABLE `data_karyawan` (

`id` INT(11) NOT NULL AUTO_INCREMENT,
`Nama` VARCHAR(50) NULL DEFAULT ‘0’,
`Alamat` VARCHAR(100) NULL DEFAULT ‘0’,
`Hobi` VARCHAR(50) NULL DEFAULT ‘0’,
INDEX `id` (`id`)
)
COLLATE=’latin1_swedish_ci’
ENGINE=MyISAM

Langkah 2

Buat koneksi Database , koneksi database anda bisa mengunakan  class koneksi atau fungsi sederhana yang sudah di sediakan php. kali ini saya membuat koneksi dengan cara yang sederhana

// Koneksi Ke Database Dengan Cara Sederhana
    $conn = mysql_connect(‘localhost’,’root’,’jakasembung’) or die(“Connection Failed”);
    mysql_select_db(‘databasedemo’) or die(“Database Not Exist”);
Langkah 3

Kemudian kita desain form untuk mengirim dan menampilkan informasi. Form ini akan di buat untuk keperluan simpan dan sekaligus mengedit untuk menghemat skrip anda.

 $qEdit=mysql_query(“SELECT * FROM data_karyawan WHERE id ='”.$_GET[‘id’].”‘”);
    $r = mysql_fetch_array($qEdit);
    $strForm = “
    <h2>Membuat Fungsi Simpan Yang Lebih Efisien</h2>
    <form method=\”post\” action=\”\”>
    <input type=\”hidden\” name=\”id\” value=\””.$r[‘id’].”\”>
    <input type=\”text\” name=\”Nama\” placeholder=\”Masukan Nama Anda\” value=\””.$r[‘Nama’].”\”> <br />
    <input type=\”text\” name=\”Alamat\” placeholder=\”Masukan Alamat Anda\” value=\””.$r[‘Alamat’].”\”> <br />
    <input type=\”text\” name=\”Hobi\” placeholder=\”Masukan Hobi Anda\” value=\””.$r[‘Hobi’].”\”><br /><br />
    <input type=\”submit\”  name=\”btnSubmit\” value=\”Simpan\” />
    </form>
    “;

Langkah 4

Kita akan membuat proses untuk menerima inputan dan memproses hasil eksekusinya.

 if (isset($_POST[‘btnSubmit’])){
     unset($_POST[‘btnSubmit’]);                                    // Kita tidak pakai Array tombol maka kita kosongkan
     $arrPost = $_POST;                                             // Mendapatkan semua nilai array yang ada di form.              
     
     if ($_POST[‘id’]==”){
        $save = save(‘data_karyawan’,$arrPost);                     // Panggil fungsi simpan
        if ($save=true) echo “<b>Simpan Data Berhasil</b> </br>”;
     }else{
        $update = update(‘data_karyawan’,$arrPost,$_POST[‘id’]);    // Panggil fungsi simpan
        if ($save=true) echo “<b>Update Data Berhasil</b> </br>”;
     }
    }
    echo $strForm;
    echo tampilkan_data();
   

Langkah 5

Pada langkah ke 4 kita sudah mendeklarasikan beberapa fungsi yang di gunakan untuk memnyimpan ,mengupdate dan menampilkan data. Sekarang akan kita buat semua fungsi-fungsi yang dibutuhkan fungsi ini tinggal anda buat sekali dan panggil dari halaman manaupun yang anda suka, sehingga kita tidak perlu menuliskan perintah insert berulang-ulang.

/// ============== DAFTAR FUNGSI =================== ///
    
    /******** Fungsi Untuk menyimpan*********/
     function save($tabel,$arrData){
         $bol=false;
         $strColumns = implode(“, “, array_keys($arrData));
         $strValues  = “‘” . implode(“‘,'”, array_values($arrData)). “‘”;
         $q=mysql_query(“INSERT INTO “.$tabel.”($strColumns) VALUES ($strValues)”);
         if ($q){$bol=true;}
       return $bol;
     }
    
    /*********** Fungsi Untuk Update ***********/
    function update($tabel,$arrData,$id){
       $bol=false;
       $q=mysql_query(“UPDATE “.$tabel.” SET “.setFormatUpdate($arrData).” WHERE id IN (“.$id.”)”);
       if ($q){$bol=true;}
       return $bol;
    }
    
    
     /************ Fungsi untuk menampilkan data yang sudah tersimpan ***********/
     function tampilkan_data(){
       $str      = “<br>”;
       $q=mysql_query(“SELECT * FROM data_karyawan”);
       $i =0;
       while($r = mysql_fetch_array($q)){
        $i++;
        $str .= “”.$i.”. Nama Anda <b>”.$r[‘Nama’].”</b>, Beralamat di <b>”.$r[‘Alamat’].”</b>, Dengan Hobi <b>”.$r[‘Hobi’].”</b> ===><a href=’?id=”.$r[‘id’].”‘>Klik Untuk Edit</a>   <br>”;
       }
       return $str;
     }
     
    /*********** Fungsi untuk mengubah format array menjadi bentuk format update SQL ******/
    function setFormatUpdate($arrData, $strConcat = “, “){
    $strAttribute = “”;
    if ($arrData != null)
    {
      if (is_array($arrData))
      {
        $arrResult = array();
        foreach ($arrData as $key => $value)
        {
          $arrResult[] = $key.” = ‘”.$value.”‘”;
        }
        $strAttribute = implode($strConcat, $arrResult);
      }
      else
        $strAttribute = $arrData;
    }
    return $strAttribute;
   }

Berikut adalah skrip lengkapnya, tinggal copi dan paste ke editor anda.

<?php
// Koneksi Ke Database Dengan Cara Sederhana
$conn = mysql_connect(‘localhost’,’root’,’sayaGanteng’) or die(“Connection Failed”);
mysql_select_db(‘databasedemo’) or die(“Database Not Exist”);

$qEdit=mysql_query(“SELECT * FROM data_karyawan WHERE id ='”.$_GET[‘id’].”‘”);
$r = mysql_fetch_array($qEdit);
$strForm = “
<h2>Membuat Fungsi Simpan Yang Lebih Efisien</h2>
<form method=\”post\” action=\”\”>
<input type=\”hidden\” name=\”id\” value=\””.$r[‘id’].”\”>
<input type=\”text\” name=\”Nama\” placeholder=\”Masukan Nama Anda\” value=\””.$r[‘Nama’].”\”> <br />
<input type=\”text\” name=\”Alamat\” placeholder=\”Masukan Alamat Anda\” value=\””.$r[‘Alamat’].”\”> <br />
<input type=\”text\” name=\”Hobi\” placeholder=\”Masukan Hobi Anda\” value=\””.$r[‘Hobi’].”\”><br /><br />
<input type=\”submit\”  name=\”btnSubmit\” value=\”Simpan\” />
</form>
“;
if (isset($_POST[‘btnSubmit’])){
unset($_POST[‘btnSubmit’]);                                    // Kita tidak pakai Array tombol maka kita kosongkan
$arrPost = $_POST;                                             // Mendapatkan semua nilai array yang ada di form.

if ($_POST[‘id’]==”){
$save = save(‘data_karyawan’,$arrPost);                     // Panggil fungsi simpan
if ($save=true) echo “<b>Simpan Data Berhasil</b> </br>”;
}else{
$update = update(‘data_karyawan’,$arrPost,$_POST[‘id’]);    // Panggil fungsi simpan
if ($save=true) echo “<b>Update Data Berhasil</b> </br>”;
}
}
echo $strForm;
echo tampilkan_data();

/// ============== DAFTAR FUNGSI =================== ///

/******** Fungsi Untuk menyimpan*********/
function save($tabel,$arrData){
$bol=false;
$strColumns = implode(“, “, array_keys($arrData));
$strValues  = “‘” . implode(“‘,'”, array_values($arrData)). “‘”;
$q=mysql_query(“INSERT INTO “.$tabel.”($strColumns) VALUES ($strValues)”);
if ($q){$bol=true;}
return $bol;
}

/*********** Fungsi Untuk Update ***********/
function update($tabel,$arrData,$id){
$bol=false;
$q=mysql_query(“UPDATE “.$tabel.” SET “.setFormatUpdate($arrData).” WHERE id IN (“.$id.”)”);
if ($q){$bol=true;}
return $bol;
}

/************ Fungsi untuk menampilkan data yang sudah tersimpan ***********/
function tampilkan_data(){
$str      = “<br>”;
$q=mysql_query(“SELECT * FROM data_karyawan”);
$i =0;
while($r = mysql_fetch_array($q)){
$i++;
$str .= “”.$i.”. Nama Anda <b>”.$r[‘Nama’].”</b>, Beralamat di <b>”.$r[‘Alamat’].”</b>, Dengan Hobi <b>”.$r[‘Hobi’].”</b> ===><a href=’?id=”.$r[‘id’].”‘>Klik Untuk Edit</a>   <br>”;
}
return $str;
}

/*********** Fungsi untuk mengubah format array menjadi bentuk format update SQL ******/
function setFormatUpdate($arrData, $strConcat = “, “){
$strAttribute = “”;
if ($arrData != null)
{
if (is_array($arrData))
{
$arrResult = array();
foreach ($arrData as $key => $value)
{
$arrResult[] = $key.” = ‘”.$value.”‘”;
}
$strAttribute = implode($strConcat, $arrResult);
}
else
$strAttribute = $arrData;
}
return $strAttribute;
}

?>

 

Dan jalankan skrip anda :

Trik PHP dasar

Bagaimana skripnya lebih sederhana efisien dan anda tidak perlu banyak menambahkan banyak skrip SQL hanya untuk menyimpan dan update data semakin anda berhemat untuk waktu coding

Related Posts Plugin for WordPress, Blogger...

Leave a Reply