Modifikasi Pagination pada CActiveDataProvider YII

Cara Modifikasi Pagination pada CActiveDataProvider YII - Pagination merupakan salahsatu hal penting apabila kita mempunyai banyak data, dan ingin membatasi jumlah data yang tampil pada halaman ini, jadi dengan menggunakan Pagination anda bisa menampilkan sebagian atau beberapa data yang dapat di tampilkan pada widget ClistView dan CGridView.

Penerapan Pagination pada yii bisa diimplementasikan pada widget tabel atau list view, dan apabila anda menggunakan CActiveDataProvider untuk menampilkan data dengan widget tersebut anda bisa memberikan ukuran berapa jumlah data yang akan muncul

Secara default, CActiveDataProvider membatasi jumlah data yang tampil sebanyak 10 records, bagaimana jika anda ingin menampilkan 4 data atau bahkan 2000 data per Pagination, berikut ini adalah script function default CActiveDataProvider tanpa modifikasi Pagination

public function actionIndex()
{
$dataProvider=new CActiveDataProvider('Users');
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}

Berikut script yang sudah dimodifikasi, jadi kita hanya menampilkan 4 records saja per halaman, perhatikan tanda yang berwarna merah dibawah ini:
public function actionIndex()
{
$dataProvider=new CActiveDataProvider('Users',array('pagination'=>array(
'pageSize'=>'4',
))
);
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}

Untuk implemtasinya cukup memanggil fungsi pagination dan pagesize dan berikut screenshot sebelum menggunakan pagiation yang belum dimodifikasi
Default, Menampilkan 10 Data per Halaman


Screenshot setelah menggunakan pagiation yang telah dimodifikasi
Hanya menampilkan 4 data per halaman

Read more

Mengambil Data Ketinggian Gelombang Laut dari BMKG dengan PHP

Cara Mengambil Data Ketinggian Gelombang Laut dari BMKG dengan PHP - Seperti yang telah diketahui pada postingan sebelumnya tentang informasi bagaimana cara mengambil data-data perkiraan cuaca dari BMKG untuk daerah di indonesia.

Pada postingan kali ini akan mempublikasikan script untuk menampilkan data ketinggian gelombang laut yang bersumber dari BMKG. Dimana informasi ini sangat bermanfaat untuk masyarakat yang merencanakan liburan atau sedang berdekatan dengan beberapa perairan dekat pulau.

Untuk menampilkan data ketinggian gelombang yang bersumber dari BMKG, caranya cukup copy paste script berikut, maka otomatis data akan muncul berdasarkan data yang diolah oleh BMKG.GO.ID

 <?php
// LOAD XML DATA GELOMBANG TINGGI
$list_cuaca = new SimpleXMLElement('http://data.bmkg.go.id/daerah_gelombang_tinggi.xml', null, true);
$mulai = $list_cuaca->Tanggal->Mulai;
$berakhir = $list_cuaca->Tanggal->Sampai;
?>
<h3>Data Ketinggian Gelombang Laut</h3>
<h5>Tanggal <?php echo $mulai; ?> sampai <?php echo $berakhir; ?></h5>
<table class="table table-hover">
<thead>
<tr style="background-color:#ffd740; color: #000; font-size:16px;">
<th>KETINGGIAN GELOMBANG</th>
<th>LOKASI DAERAH</th>
</tr>
</thead>
<tbody>
<?php foreach($list_cuaca->Isi->Row as $cuaca){ ?>
<tr>
<td><strong><?php echo $cuaca->Tinggi; ?></strong></td>
<td><strong><?php echo strtoupper($cuaca->Daerah); ?></strong></td>
</tr>
<?php } ?>
</tbody>
</table>
Read more

Mengambil Data Cuaca dari BMKG dengan PHP

Cara Mengambil Data Cuaca secara Realtime dari BMKG dengan PHP - Badan Meteorologi, Klimatologi, dan Geofisika (disingkat BMKG) merupakan salahsatu instansi resmi pemerintah yang mengelola data terkait informasi penting seperti prediksi cuaca, informasi gempa, tsunami dll. 

BMKG juga menyediakan kepada publik dengan menyediakan layanan untuk menampilkan data cuaca, gampa se-indonesia secara langsung (realtime) dan resmi di publikasikan oleh BMKG. Bagi yang mau mencoba untuk menampilkan data secara cuaca dari BMKG.GO.ID berikut script untuk mengambil data cuaca untuk kota-kota besar di indonesia dan jabotabek.

Cara Mengambil Data Cuaca secara Realtime dari BMKG
<?php
// LOAD XML DATA CUACA JABOTABEK
$list_cuaca = new SimpleXMLElement('http://data.bmkg.go.id/cuaca_jabodetabek_1.xml', null, true);
$tanggal = $list_cuaca->Tanggal->Mulai;
?>
<table class="table table-hover">
<thead>
<tr style="background-color:#ffd740; color: #000; font-size:16px;">
<th>DAERAH</th>
<th>PAGI</th>
<th>SIANG</th>
<th>MALAM</th>
</tr>
</thead>
<tbody>
<?php foreach($list_cuaca->Isi->Row as $cuaca){ ?>
<tr>
<td><strong><?php echo strtoupper($cuaca->Daerah); ?></strong></td>
<td><strong><?php echo $cuaca->Pagi; ?></strong></td>
<td><strong><?php echo $cuaca->Siang; ?></strong></td>
<td><strong><?php echo $cuaca->Malam; ?></strong></td>
</tr>
<?php } ?>
</tbody>
</table>

Selain info diatas, dapat juga menampilkan informasi lain seperti data cuaca per provinsi, per kota-kota besar, data tsunami, data gempa, cuaca maritim, cuaca dataran,
Read more

Membuat Database SQLite di Android + Contoh Aplikasi

Cara Menyimpan Data di Android dengan Database SQLite - Tutorial membuat aplikasi di android yang dapat menyimpan data ke database SQLite, pada tutorial kali ini akan membahas bagaimana cara membuat database SQLite di android dengan mudah, yang dilengkapi dengan script serta file program androidnya, untuk memulai membuat aplikasi database SQLite silahkan membuat project baru, kemudian ikuti script android dibawah ini:

Tutorial : Aplikasi Simpan ke Database dengan SQLite
----------------------------------------------------------------------------
File : String.xml (Values)
----------------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Aplikasi SQLite</string>
    <string name="action_settings">Settings</string>
    <string name="judul">.: Input Nama dan Hobi :.</string>
    <string name="btnAddtxt">Add</string>
    <string name="namaLabel">Nama</string>
    <string name="hobiLabel">Hobi</string>
    <string name="nomorLabel">No.</string>
</resources>

----------------------------------------------------------------------------
File : Main.xml (Layout)
----------------------------------------------------------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".BasisData01" >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/judul" />
    <LinearLayout
        android:id="@+id/Linearlayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
        <EditText
            android:id="@+id/inNama"
            android:layout_width="100dip"
            android:layout_height="wrap_content" >
        </EditText>
        <EditText
            android:id="@+id/inHobi"
            android:layout_width="100dip"
            android:layout_height="wrap_content" >
        </EditText>
        <Button
            android:id="@+id/btnAdd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/btnAddtxt" >
        </Button>
    </LinearLayout>
    <TableLayout
        android:id="@+id/tabel_data"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
            <TextView
                android:id="@+id/no_id"
                android:layout_width="50dip"
                android:layout_height="wrap_content"
                android:text="@string/nomorLabel" >
            </TextView>
            <TextView
                android:id="@+id/nama_id"
                android:layout_width="100dip"
                android:layout_height="wrap_content"
                android:text="@string/namaLabel" >
            </TextView>
            <TextView
                android:id="@+id/hobi_id"
                android:layout_width="100dip"
                android:layout_height="wrap_content"
                android:text="@string/hobiLabel" >
            </TextView>
        </TableRow>
    </TableLayout>
</LinearLayout>

----------------------------------------------------------------------------
File : DatabaseManager.java (SRC)
----------------------------------------------------------------------------
package com.basisdata.aplikasibasisdata01;
import java.util.ArrayList;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DatabaseManager {
    private static final String ROW_ID = "_id";
    private static final String ROW_NAMA = "nama";
    private static final String ROW_HOBI = "hobi";
    private static final String NAMA_DB = "mugi";
    private static final String NAMA_TABEL = "hobi";
    private static final int DB_VERSION = 1;
    private static final String CREATE_TABLE = "create table "+NAMA_TABEL+" ("+ROW_ID+" integer PRIMARY KEY autoincrement,"+ROW_NAMA+" text,"+ROW_HOBI+" text)";
    private final Context context;
    private DatabaseOpenHelper dbHelper;
    private SQLiteDatabase db;
    public DatabaseManager(Context ctx) {
        this.context = ctx;
        dbHelper = new DatabaseOpenHelper(context);
        db = dbHelper.getWritableDatabase();
    }
    private static class DatabaseOpenHelper extends SQLiteOpenHelper {
        public DatabaseOpenHelper(Context context) {
            super(context, NAMA_DB, null, DB_VERSION);
            // TODO Auto-generated constructor stub
        }
        @Override
        public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
            db.execSQL(CREATE_TABLE);
        }
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVer, int newVer) {
        // TODO Auto-generated method stub
            db.execSQL("DROP TABLE IF EXISTS "+NAMA_DB);
            onCreate(db);
        }
    }
    public void close() {
        dbHelper.close();
    }
    public void addRow(String nama, String hobi) {
        ContentValues values = new ContentValues();
        values.put(ROW_NAMA, nama);
        values.put(ROW_HOBI, hobi);
        try {
            db.insert(NAMA_TABEL, null, values);
        } catch (Exception e) {
            Log.e("Database Error ", e.toString());
            e.printStackTrace();
        }
    }
    public ArrayList<ArrayList<Object>> ambilSemuaBaris() {
        ArrayList<ArrayList<Object>> dataArray = new
        ArrayList<ArrayList<Object>>();
        Cursor cur;
        try {
            cur = db.query(NAMA_TABEL,
                new String[] { ROW_ID, ROW_NAMA, ROW_HOBI }, null, null,
                null, null, null);
            cur.moveToFirst();
            if (!cur.isAfterLast()) {
                do {
                    ArrayList<Object> dataList = new ArrayList<Object>();
                    dataList.add(cur.getLong(0));
                    dataList.add(cur.getString(1));
                    dataList.add(cur.getString(2));
                    dataArray.add(dataList);
                } while (cur.moveToNext());
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Log.e("Database Error", e.toString());
        }
        return dataArray;
    }
}

----------------------------------------------------------------------------
File : BasisData01.java (SRC)
----------------------------------------------------------------------------
package com.basisdata.aplikasibasisdata01;
import java.util.ArrayList;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.Toast;
import android.view.Menu;
public class BasisData01 extends Activity {
    DatabaseManager dm;
    EditText nama, hobi;
    Button addBtn;
    TableLayout tabel4data;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        dm = new DatabaseManager(this);
        tabel4data = (TableLayout) findViewById(R.id.tabel_data);
        nama = (EditText) findViewById(R.id.inNama);
        hobi = (EditText) findViewById(R.id.inHobi);
        addBtn = (Button) findViewById(R.id.btnAdd);
        addBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                simpKamuta();
            }
        });
        updateTable();
    }
    protected void simpKamuta() {
        try {
            dm.addRow(nama.getText().toString(),hobi.getText().toString());
            Toast.makeText(getBaseContext(),nama.getText().toString() + ", berhasil disimpan",Toast.LENGTH_SHORT).show();
            updateTable();
            kosongkanField();
        } catch (Exception e) {
            e.printStackTrace();
            Toast.makeText(getBaseContext(), "gagal simpan, " + e.toString(),Toast.LENGTH_LONG).show();
        }
    }
    protected void kosongkanField(){
        nama.setText("");
        hobi.setText("");
    }
    protected void updateTable() {
// TODO Auto-generated method stub
        while (tabel4data.getChildCount() > 1) {
            tabel4data.removeViewAt(1);
        }
        ArrayList<ArrayList<Object>> data = dm.ambilSemuaBaris();
        for (int posisi = 0; posisi < data.size(); posisi++) {
            TableRow tabelBaris = new TableRow(this);
            ArrayList<Object> baris = data.get(posisi);
            TextView idTxt = new TextView(this);
            idTxt.setText(baris.get(0).toString());
            tabelBaris.addView(idTxt);
            TextView namaTxt = new TextView(this);
            namaTxt.setText(baris.get(1).toString());
            tabelBaris.addView(namaTxt);
            TextView hobiTxt = new TextView(this);
            hobiTxt.setText(baris.get(2).toString());
            tabelBaris.addView(hobiTxt);
            tabel4data.addView(tabelBaris);
        }
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.basis_data01, menu);
        return true;
    }
}

Itulah tadi bagaimana membuat database SQLite di Android dengan contoh aplikasi, Berikut hasil dari aplikasi di android yang disimpan di database SQLite, selamat mencoba semoga bermanfaat.


Membuat Database SQLite di Android + Contoh Aplikasi
Read more

Contoh Program Java CRUD + Database

Contoh Aplikasi Program Netbeans Java CRUD + Database MYSQL  - Dalam sebuah proyek terdapat beberapa elemen yang menjadi unsur pokok kegiatan, yang biasa menjadi kendala adalah terkait pengelolaan baik itu secara teknis dan non teknis, pada fungsinya managemen dapat membantu mengolah fungsi pengelolaan dan pengawasan untuk sebuah proyek. Pentingnya pengawasan menjadi landasan agar terciptanya kesuksesan sebuah proyek.

Untuk menghindari permasalahan tersebut dan untuk meningkatkan kinerja operasional organisasi dalam melakukan pengolahan data proyek serta melihat prospek kinerja karyawan, maka perlu untuk melakukan pengasawan dan pengelolaan melalui sistem yang terintegrasi. Berikut ini adalah sample contoh aplikasi java netbeans CRUD dengan Database MYSQL studi kasus Manajemen Proyek berbasis Desktop.

Screenshot:: Aplikasi Program Java CRUD + Database

Contoh Program Java CRUD + Database

Contoh Program Java CRUD + Database

Bagi anda yang berminat dengan aplikasi + laporan lengkap ini, silahkan kontak melalui email infomugi@gmail.com dengan donasi seiklasnya. Terimakasih.
Read more