Example #1
0
 /**
  * fungsi standar buat update value,
  *
  * ex :
  *
  * $this->update(
  *      'nama_tabel',
  *      array( 'kolom1', 'kolom2' ),
  *      array( 'nilai1', 'nilai2' ),
  *      array(
  *          array( '', 'kolom1', 'kondisi1' ),      -> operator untuk array 1 dikosongkan
  *          array( 'AND', 'kolom2', 'kondisi' )
  *      )
  * )
  *
  *
  * @author Zaf
  * @param string $table
  * @param array $column
  * @param array $value
  * @param array $condition
  * @return bool $res
  */
 function update($table, $column, $value, $condition)
 {
     $c_column = count($column);
     $c_value = count($value);
     $c_condition = count($condition);
     $cr_condition = count($condition, COUNT_RECURSIVE);
     // recursive
     /**
      * karena strukturnya multidimensi array
      */
     $is_condition_multi = $c_condition != $cr_condition;
     /**
      * sama seperti insert, pastikan jumlah kolom dan nilai tiap value sama
      */
     if ($c_column != $c_value || !$is_condition_multi && 2 != $c_condition && !is_array($condition)) {
         lrs_exit('Error while execute `update` function, invalid params or column and value count mismatch.');
     }
     /**
      * query dasar
      */
     $query = 'UPDATE `' . $table . '` SET';
     /**
      * bentuk query
      */
     foreach ($column as $k => $c) {
         $query .= ' `' . $c . '` = "' . $value[$k] . '"' . ($c != end($column) ? ', ' : '');
     }
     /**
      * kondisi-kondisi
      */
     $query .= ' WHERE';
     if ($is_condition_multi) {
         foreach ($condition as $d) {
             $query .= ' ' . $d[0] . ' `' . $d[1] . '` = "' . $d[2] . '"';
         }
     } else {
         $query .= ' `' . $condition[0] . '` = "' . $condition[1] . '"';
     }
     $result = mysql_query($query);
     $result || error_log(mysql_error());
     return $result;
 }
Example #2
0
/**
 * berfungsi untuk me-redirect ke halaman tertentu,
 * dengan mengeksekusi exit() di akhir untuk memastikan
 * tidak ada program yang berjalan selanjutnya
 *
 * @param string $target
 */
function lrs_redirect($target = LRS_URI_PATH)
{
    header('Location: ' . $target);
    lrs_exit();
}
Example #3
0
 /**
  * @param $params
  */
 function parse_page($params)
 {
     /** init tingkat yang ada di params */
     $this->init_tingkat($params);
     $view_path = LRS_VIEW_ABS_PATH;
     $file_to_include = $view_path . DS . self::page_404;
     /** kondisi untuk halaman publik utama atau beranda */
     if (!$this->has_tingkat(1) || $this->get_tingkat(1) == self::view_beranda) {
         $file_to_include = $view_path . DS . self::page_index;
         /** untuk kondisi pertama, tentukan jenis nya terlebih dahulu */
     } else {
         $has_view = true;
         /** untuk tingkat 1 dari jenis view, langsung tampilkan index */
         switch ($this->get_tingkat(1)) {
             case self::view_admin:
                 Contents::get_instance()->set_view(self::view_admin);
                 break;
             case self::view_staff:
                 Contents::get_instance()->set_view(self::view_staff);
                 break;
             default:
                 $has_view = false;
         }
         /** jika kondisi diatas memenuhi diantara view yang telah ditentukan */
         if ($has_view) {
             /**
              * kondisi pertama jika memang yang diinginkan adalah halaman
              * index dari tiap view
              */
             $condition1 = Contents::get_instance()->get_view_path() . DS . self::page_index;
             /**
              * kondisi kedua jika sub page dari tiap view tidak ketemu
              * gunakan index dari tiap view
              */
             $condition2 = Contents::get_instance()->get_view_path() . DS . (!$this->has_tingkat(2) ? self::page_index : $this->get_tingkat(2) . self::script_ext);
             /**
              * lakukan pengecekan
              */
             $file_to_include = is_readable($condition2) ? $condition2 : $condition1;
             /** jika memang tidak ada di daftar view */
         } else {
             /**
              * coba eksekusi tingkat1.php jika ada
              */
             $file_to_include = $view_path . DS . $this->get_tingkat(1) . self::script_ext;
             /**
              * dan apabila memang tidak ada, langsung berikan halaman 404
              */
             is_readable($file_to_include) || ($file_to_include = $view_path . DS . self::page_404);
             /**
              * jika memang file untuk di-include tidak ditemukan
              * bersihkan variabel view yang sudah kedung tersimpan
              * di objek Contents
              */
             Contents::get_instance()->remove_view();
         }
     }
     //lrs_exit( $file_to_include );
     /** mulai meng-include */
     if (is_readable($file_to_include)) {
         include $file_to_include;
     } else {
         lrs_exit('Script yang side eksekusi belum ada.', 'alert');
     }
 }