Tampilkan postingan dengan label Web. Tampilkan semua postingan
Tampilkan postingan dengan label Web. Tampilkan semua postingan

Selasa, 11 April 2017

Kisah Program Aplikasi Pencarian Peribahasa, Ungkapan, dan Kiasan Bahasa Indoensia Beserta Artinya

Alkisah ada seorang pengembara di dunia perkodingan, yang hari-hari dilaluinya selalu dihiasi dengan mimpi-mimpi. Baik itu mimpi indah, mimpi, buruk, mimpi masa lalu, mimpi masa depan, mimpi nggak jelas hingga mimpi sejelas film bioskop. Salah satu dari mimpinya adalah membuat program aplikasi komputer yang dapat bermanfaat buat manusia banyak, terutama manusia Indonesia.

Suatu hari yang panas dan terik, si pengembara duduk di tepian telaga sunyi yang sejuk, sekedar melepas lelah, mengeringkan peluh. Diiringi alunan syahdu lagu merdu mendayu dari MP3 playernya. Semilir angin AC hampir melenakannya. Sekonyong-konyong, jatuhlah buah nanas di atas kepalanya, dari pohon yang menjadi sandarannya. Setelah terhilang rasa kagetnya, si pengembara mengelus-elus kepalanya, terasa kulit kepalanya pedih dan perih... si pengembara tercenung sejenak... perih... ah yaa! perihbahasa!! .. eh peribahasa (nggak pake 'h').

Dan semenjak si pengembara kejatuhan buah nanas, ia banyak melamun, melamun, dan melamun. Bukan gara-gara karena kejatuhan nanas ya. Tapi karena memang dia suka melamun dan berkhayal. Sambil melamun dan makan bekalnya, dia membuka kitab berisi foto-foto saudara seperguruannya... tiiinggg! Secercah cahaya memasuki alam pikirannya. Si pengembara teringat, ia memiliki saudara eh saudari-saudari seperguruan yang memiliki ilmu tingkat tinggi tentang peribahasa di dunia perbahasaan. Langsung dengan ilmu telepatinya si pengembara menghubungi saudari-saudari seperguruannya untuk membantunya bahu-membahu mengisi database aplikasi pencarian peribahasa. Gayung pun bersambut. saudari-saudari seperguruan si pengembara menyanggupi permintaan bala bantuan.

Dengan semangat 45, si pengembara mulai banting tulang peras keringat putar otak membuat program aplikasi komputer untuk mencari peribahasa bahasa Indonesia berbasis web. Si pengembara menginginkan aplikasi komputer tersebut berbasis web agar dapat menjangkau area wilayah Indonesia yang lebih luas lagi, dari Sabang sampai Merauke.

Singkat cerita, berhasillah si pengembara mengembangkan program aplikasi komputer pencarian peribahasa Indonesia berserta artinya. Namun, lagi-lagi sifat dasar si pengembara, mengembara ke sana kemari sambil melamun, membentuk satu sifat lagi yaitu tidak merasa tenang. Alhasil, yang semula hanya ingin membuat program aplikasi komputer mengenai peribahasa, berubah, ditambahi dengan, tidak tanggung-tanggung, ungkapan dan kiasan bahasa Indonesia beserta artinya. Dan... banting tulang peras keringat putar otak dilakukan lagi oleh si pengembara selama 7 hari tujuh malam... sampai badan si pengembara berubah drastis tinggal kulit berbalut daging alias ndut brooo.

Hingga akhirnya, hari ini, di sini, di bangku ini, si pengembara berhasil menyelesaikan program aplikasi pencarian peribahasa, ungkapan, dan kiasan bahasa Indonesia... disertai isi-isinya, yang mengandung 2881 peribahasa, 107 ungkapan, dan 110 kiasan... bisa dipakai kapan saja, di mana saja, oleh siapa saja, di alamat situs web http://peribahasa.ilmubiner.web.id yang aktif full time selama 24 jam, 7 hari seminggu. Si pengembara pun sujud syukur ke hadirat Allah SWT lalu memohon agar program aplikasi yang dibuatnya dapat bermanfaat bagi bangsa Indonesia dan bangsa-bangsa lain, aamiin YRA

Rabu, 12 Oktober 2016

Tipe Data MySQL Quick Reference Sheet

MySQL merupakan salah satu perangkat lunak sistem manajemen basis data yang populer bagi pengembang web di seluruh dunia. Seperti halnya perangkat lunak database lainnya, di MySQL juga ada tipe-tipe data. Pengetahuan tipe-tipe data wajib diketahui oleh para developer IT agar data dapat disimpan dengan baik dan benar.Klik tombol berikut ini untuk membuka atau mengunduh file PDF yang berisi daftar ringkas tipe-tipe data yang ada di dalam MySQL. Selamat belajar!

https://drive.google.com/open?id=0B1pmMQxkzlYfOVFycllxdjltdnM



Selasa, 22 Desember 2015

Mengambil Data File .txt atau Konten Dari Situs Lain Menggunakan Javascript

Kasus ini gue dapetin gara-gara program Javascript gue pingin bisa mengambil data dari file .txt yang ada di situs lain bukan di situs gue sendiri. Waktu itu sudah berulang kali cari di internet, berulang kali mencoba gagal terus, dan yang dapet dan bisa adalah mengambil file .txt tersebut dengan menggunakan PHP. Meski tidak sesuai yang diinginkan ya dipakai sajalah. Tapi hati ini rasanya penasaran dan nggak terlalu puas... akhirnya ya nyari lagi... nyoba lagi... sampe pusing pala berbi. Namun dari pencarian tersebut... nambah ilmu... bahwa :

  • File .txt yang ada di situs web lain tidak dapat diakses dan diambil isinya menggunakan Javascript standar bahkan tidak bisa juga menggunakan Ajax xhttprequest, dan hanya bisa dilakukan menggunakan PHP.
  • Javascript dan Ajax httprequest hanya bisa mengakses file .txt yang ada di situs yang sama (lokal) bukan file .txt yang ada di situs web lain (remote).
  • Jika membuka file .txt dan datanya tampil di web browser, berarti data yang tampil tersebut sudah dianggap sebagai konten. Bukan sebagai isi file .txt.
Setelah maksa mbah gugel bekerja keras dan memaksa diri ini berpikir keras, alhamdulillah bisa juga membuat program Javascript yang dapat mengakses dan mengambil data dari file .txt di situs web lain. Itu pun didapat dari artikel yang topiknya mengenai "mengambil konten dari situs web lain menggunakan Javascript" !!!

Program yang dibuat, menggunakan jQuery, Ajax dan YQL. jQuery merupakan salah satu framework Javascript dan YQL (Yahoo! Query Language) merupakan platform untuk melakukan query, filter, dan penggabungan data / informasi dari internet, dan YQL mirip dengan perintah SQL.

jQuery dapat diambil di : https://code.jquery.com/jquery-1.11.3.js
ajax-xdomain.js (include perintah YSQL) dapat di ambil di : http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

Berikut source code HTML yang mengandung Javascript untuk mengambil data file .txt atau konten dari Situs Lain (cross site .txt file / content). Catatan : di source code ini file-file .js ada di server lokal.

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html" />
<meta name="author" content="ilmuBiner" />
<title>Mengakses data file .txt atau konten cross site dari situs lain</title>
<script src="jquery-1.11.3.js"></script>
<script src="ajax-xdomain.js"></script>
</head>
<body>
<div id="container"></div>
<script>
var isi;
$.ajax({ url: 'http://www.situslain.com/datanya.txt',
  type: 'GET',
  success: function(res) {
    isi = $(res.responseText).text();
    document.getElementById("container").innerHTML = isi;
  }
});
</script>
</body>
</html> 
Semoga bermanfaat!... selamat belajar

Rabu, 19 Agustus 2015

Cetak Halaman Web Sekali Klik Tombol, Tanpa Muncul Window Opsi Printer dan Tanpa Mencetak Header dan Footer

The story behind... ada kebutuhan membuat aplikasi berbasis web menggunakan PHP untuk mencetak struk pembelian oleh kasir (struk yang dicetak sama dengan tampilan pada web browser). Kebutuhannya adalah, kasir tinggal "menekan tombol" untuk mencetak struk pembelian. Kenyataannya aplikasi berbasis web menggunakan PHP sulit melakukan hal demikian. Putar otak... aha! pakai bantuan JavaScript. Searching dikit... voila! ketemu perintahnya yaitu : window.print(). Terus kutak-katik program... berhasil... tapi... header dan footer halaman web-nya tercetak terus "tombol"-nya ikut tercetak juga!!! Searching lagi... hmm, dapet... kutak-katik programmnya lagi... tes lagi... berhasil!

Algoritmanya : saat kasir klik "tombol" yang berupa link maka akan menjaankan suatu function yang isinya; a) perintah untuk menghapus "tombol" (link) dan, b) perintah untuk mencetak halaman web. Sedangkan header dan footer disembunyikan dengan menambahkan atribut pada tag <html> (lihat gambar).

Berikut ini gambar source code sederhana agar bisa mencetak halaman web sekali klik, "tombol"-nya (link) tidak ikut tercetak, demikian pula header dan footer tidak ikut tercetak pula. Perhatikan baik-baik baris yang di-highlight warna kuning. Klik gambar untuk memperbesar. WARNING : source code jalan dengan baik di Mozilla Firefox dan belum pernah diuji coba di web browser lainnya.


Semoga bermanfaat

Update : Di bawah ini tambahan CSS pada blok <head> yang katanya berfungsi pada web browser Chrome dan Safari... katanya lho :p coba sendiri aja ya :)
<style media="print" type="text/css">
  @page {
    size: auto;   /* nilai awal ukuran halaman */
    margin: 0mm;  /* mengubah margin printer */
  }

  body {
    background-color:#FFFFFF; 
    margin: 0px;  /* mengubah margin konten */
    padding: 0.25in 0.5in; /* mengubah padding konten */
  }
</style>
Selamat belajar!

Selasa, 23 Juni 2015

Mengedit Data Dalam File .DBF Foxpro 2.6 dengan Program PHP

Singkat cerita, sudah sejak lama memiliki program aplikasi PHP untuk menampilkan data yang disimpan pada file database Foxpro 2.6 (DOS). Tetapi gara-gara menemukan kesulitan untuk mengubah data di dalam database Foxpro tersebut, akhirnya dengan amat sangat terpaksa sekali membuat program PHP untuk mengubah data alias edit data alias update data yang ada di dalam database DBF Foxpro. Dengan sedikit googling dan rada-rada bingung karena referensinya dikits bingits, alhamdulillah programnya jadi juga meski dengan banyak trial error berulang kali. Berikut source code alias kode sumber program PHP untuk mengedit data yang disimpan dalam file DBF Foxpro 2.6.

$dtnilai = @dbase_open('./dat/dataku.dbf', 2)
  or die("Error : File data tidak dapat diakses!");
$jum = dbase_numrecords($dtnilai);
for($x=1; $x<=$jum; $x++){
  $hasil = dbase_get_record($dtnilai, $x);
  if(trim($hasil[4])==trim($data_yg_dicari)){
    unset($hasil['deleted']);
    $hasil[6] = $data_baru1;
    $hasil[7] = $data_baru2;
    dbase_replace_record($dtnilai, $hasil, $x);
    dbase_close($dtnilai);
    break;
  } 
} 
hasil[4], hasil[6], hasil[7] menunjukkan posisi field. Field pertama nomor indeksnya adalah 0 (nol). $hasil['deleted'] adalah field yang dibuat oleh Foxpro, jadi harus dihapus terlebih dahulu sebelum melakukan update / edit / perubahan.

Kamis, 12 Februari 2015

Membuat File .exe Sebagai Service

Gara-gara bikin aplikasi web pakai PHP untuk akses database Foxpro 2.6 (.dbf) mengakibatkan downgrade xampp ver. 1.4.5 yang PHP-nya masih support database keluarga keturunan DBase. Yang jadi masalah adalah xampp 1.4.5 tidak ada tool untuk menjalankan Apache dan MySQL sebagai service di sistem operasi Windows (7). Jadi naikin Apache sama MySQL-nya harus manual, sehingga bisa manimbulkan masalah kalau saya nggak ada untuk menyalakan Apache + MySQL... apa jadinya nanti?.

Akhirnya nguplek2 Google dan menemukan cara untuk membuat file .exe dijadikan service di sistem operasi Windows. Kenapa file .exe dijadikan sebagai service? karena jika file .exe dijadikan service maka setiap kali komputer di-boot atau di-reboot, file .exe yang menjadi service tersebut otomatis akan dieksekusi dan running sebagai background (baca : tidak ada window / jendelanya). Jadi kalau saya nggak ada, orang lain tinggal menyalakan komputer yang otomatis akan meng-up-kan Apache + MySQL-nya.

Cara membuat file .exe sebagai service adalah :
  1. Buka Command Prompt alias Windows Console alias DOS prompt window alias cmd.
  2. Ketik :
    sc create namaService binpath= "c:\xampp\xampp_start.exe"
    lalu tekan tombol Enter. namaService bebas. Simbol = dengan teks binpath tidak boleh ada spasi. Nama File dan path-nya harus di antara tanda kutip dua.
  3. Jika proses di atas sukses, ketik :
    c:\xampp\xampp_start.exe /install
    lalu tekan tombol Enter.Selesai.
Perintah sc pada langkah no.2 untuk menjalankan file sc.exe yang gunanya membuat file .exe sebagai service. File sc.exe ini adalah bawaan pada sistem operasi Windows. Service yang dibuat menggunakan sc.exe dapat dilihat melalui Control Panel -- System and Security -- Administrative Tools -- Services.

Sekian, semoga bermanfaat!

Jumat, 18 Juli 2014

Souce Code PHP : Mencari dan Menghapus Duplikasi pada Array Multidimensi

Berikut source code PHP untuk mencari duplikasi elemen array pada array multidimensi dan menghapusnya. Ada dua jenis source code PHP untuk mencari duplikasi elemen array pada array multidimensi dan menghapusnya yaitu menghapus elemen array yang sama persis dan menghapus elemen array jika ada sub elemen yang sama dengan sub elemen lainnya. Cekidot source code di bawah ini :

Source code menghapus elemen array yang sama persis :

(klik gambar untuk memperbesar)

Source code menghapus elemen array jika ada sub elemen yang sama dengan sub elemen lainnya :



Oke begitulah source code PHP untuk mencari duplikasi elemen array pada array multidimensi dan menghapusnya, silahkan dipelajari dan dicoba.

dikompilasi dari berbagai sumber :
http://stackoverflow.com/questions/1861682/php-multi-dimensional-array-remove-duplicate
http://stackoverflow.com/questions/307674/how-to-remove-duplicate-values-from-a-multi-dimensional-array-in-php

Selasa, 21 Januari 2014

Panduan Mengatasi Masalah-Masalah Uji Coba Aplikasi PHP MySQL di Web Host

Note : diasumsikan program aplikasi PHP dan database MySQL sudah dapat dijalankan pada localhost atau 127.0.0.1 tanpa ada kesalahan
berikut pertanyaan-pertanyaan yg memandu agar bisa menjalankan situs web pada web host

sudah bisa membuat database di web host? (bukan di localhost)
jika ya lanjutkan ke pertanyaan berikut, jika belum, buat dulu database di web host (bukan di localhost)
sudah bisa membuat tabel-tabel di dalam database yang sudah dibuat di dlm web host? (bukan di localhost)
jika ya lanjutkan ke pertanyaan berikut, jika belum, buat dulu tabel-tabel di dalam database yg ada di web host (bukan di localhost)

sudah mengisi data pada tabel-tabel di dalam database yang sudah dibuat di dlm web host? (bukan di localhost)
jika ya lanjutkan ke pertanyaan berikut, jika belum, isi dulu data ke dlm tabel-tabel di dalam database yg ada di web host (bukan di localhost)

sudah upload file-file .php ke web host? (bukan di localhost)
jika ya lanjutkan ke pertanyaan berikut, jika upload dulu file-file .php ke web host (bukan di localhost)

sudah mengganti nilai-nilai parameter pada fungsi mysql_connect()?
jika ya lanjutkan ke pertanyaan berikut, jika belum, pada fungsi mysql_connect() ganti "localhost" atau "127.0.0.1" dengan nama domain database / IP address yg diberikan oleh web host, ganti "root" dengan nama akun yg diberikan oleh web host, ganti "" (password) dengan password yg diberikan oleh web host
jika aplikasi dan database tidak dapat digunakan, cari tahu :
- nama domain database atau IP address webhost
- user name database milik anda yg berasal dari web host
- dan passwordnya
jika nama domain database / IP addres user name dan password telah digunakan pada fungsi mysql_connect tapi belum bisa juga, baca panduan / help yang disediakan oleh web host

Kamis, 11 Juli 2013

Menghapus Elemen Array di PHP

Di bawah ini cara menghapus suatu elemen array yang menggunakan index numerik :

$array = array(0, 1, 2, 3);
unset($array[2]);
var_dump($array); //menampilkan hasil
 
//hasil
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [3]=>
  int(3)
} */ 

Di bawah ini sama seperti di atas, hanya saja index-nya "dirapikan" :

$array = array(0, 1, 2, 3);
array_splice($array, 2, 1);
var_dump($array);
 
//hasil 
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */

Cara lain :

$array = array(0, 1, 2, 3);
unset($array[2]);
$array = array_values($array);
var_dump($array);
 
//hasil 
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */

Semoga berguna

Kamis, 20 Juni 2013

Belajar Pemrograman Python Bag. 6 : Operator-Operator

Haiiii..... sekarang kita belajar tentang operator-operator yang ada di Python. Operator adalah suatu simbol untuk melakukan suatu operasi. Operator dibagi beberapa kategori, yaitu :

  • Operator Aritmatika, yaitu operator untuk melakukan kalkulasi matematika, yang terdiri dari :
    • * : perkalian
    • / : pembagian
    • % : modulus (menghitung sisa pembagian)
    • + : penjumlahan
    • - : pengurangan
    • ++ : ditambah 1 (increment)
    • -- : dikurangi 1 (decrement)
  • Operator perbandingan, yaitu operator untuk membandingkan dua nilai dan menghasilkan nilai TRUE atau FALSE (benar atau salah), yang terdiri dari :
    • = : sama dengan
    • != : tidak sama dengan
    • < : lebih kecil
    • <= : lebih kecil atau sama dengan
    • > : lebih besar
    • >= : lebih besar atau sama dengan

Senin, 17 Juni 2013

Belajar Pemrograman Python Bag.3 : Mengenal Python

Karena pusing cari-cari IDE Python yang sesuai, mendingan ngubek-ubek internet tentang Python. Berikut informasi yang didapat tentang Python dalam bentuk poin-poin agar mudah dibaca

  • Python adalah bahasa pemrograman umum dan dirancang mirip bahasa Inggris agar mudah dibaca. Selain itu Python dapat digunakan sebagai scripting language.
  • Python menggunakan interpreter. Jadi pada saat selesai dibuat dapat langsung dieksekusi tanpa harus di-compile terlebih dahulu.
  • Python interaktif. Maksudnya kita dapat masuk ke lingkungan Python atau menggunakan Python prompt dan langsung menuliskan dan menjalankan perintah Python (tanpa harus menyusun source code)
  • Python telah mendukung pemrograman berorientasi objek (object oriented programming)
  • Python cocok untuk pemula yang baru belajar pemrograman dan kemampuannya lengkap, seperti pemrosesan teks, pemrograman web, pemrograman game.

Sejarah Python
  • Dibuat oleh Guido van Rossum akhir 80-an dan awal 90-an yang bekerja di National Research Institute for Mathematics and Computer Science di Belanda. Saat ini Python dikembangkan oleh Python Software Foundation (situs web : http://www.python.org/)
  • Python dipengaruhi oleh :
    • ABC
    • Modula-3
    • C
    • C++
    • Algol-68
    • SmallTalk
    • Unix shell
    • dan bahasa scripting lainnya
  • Lisensi Python adalah open source GPL (Gnu Public License) dan memenuhi syarat OSI
Fitur Python dibandingkan dengan bahasa pemrograman lainnya :
  • Mudah dipelajari.
  • Mudah dibaca.
  • Mudah dipelihara
  • Memiliki standard library yang luas, portabel, dan cross platform. Sistem operasi yang didukung Python :
    • Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX dll.)
    • Win 9x/NT/2000
    • Macintosh (Intel, PPC, 68K)
    • OS/2
    • DOS
    • PalmOS
    • telepon genggam Nokia
    • Windows CE
    • Acorn/RISC OS
    • BeOS
    • Amiga
    • VMS/OpenVMS
    • QNX
    • VxWorks
    • Psion
    • Implementasi Python :
      • CPython
      • Jython untuk Java Virtual Machine implementation, dan dapat mengakses Java class library.
      • IronPython untuk .NET Common Language Runtime.
      • RPython dapat di-compile menjadi C, Java bytecode atau Common Intermediate Language, dan dugunakan untuk membuat interpreter Python PyPy.
      • Pyjamas meng-compile Python jadi JavaScript.
      • Shed Skin meng-compile Python jadi C++.
      • Cython dan Pyrex meng-compile Python jadi C.
  • Portabel sehingga dapat digunakan pada perangkat keras yang berbeda dengan antar muka yang sama.
  • Modul dapat diekstensi dengan bahasa pemrograman low level.
  • Memiliki antar muka dengan berbagai database yang ada.
  • Mendukung pemrograman GUI (graphical user interface -antar muka penggunak berbasis grafik-)
  • Python dapat digunakan pada aplikasi sederhana sampai aplikasi enterprise (scalable).
  • Selain mendukung OOP, Python juga mendukung pemrograman terstruktur dan pemrograman fungsional.
  • Dapat digunakan sebagai scripting language, bisa juga di-compile menjadi byte code.
  • Memiliki tipe data dinamis sangat tinggi dan mendukung pemeriksaan tpe data dinamis.
  • Mendukung garbage collection dinamis.
  • Mudah diintegrasikan dengan C, C++, COM, ActiveX, CORBA, dan Java.

Belajar Pemrograman Python Bag. 2 : Program Hello World

Melanjutkan postingan sebelumnya tentang Belajar Pemrograman Pyhton Bag. 1 : Instalasi sekarang mau belajar bikin program Python yang paling seupil yaitu program untuk menampilkan teks : hello world. Tapi karena gue orang Indonesia asli, tulisan yang mau ditampilkan diganti dengan : apa kabar duniaaaaaaa....

pertama bikin folder buat nyimpen file-file source code Python, nama foldernya terserahlah, punya gue sih namanya "belajar python" dan dibuat di drive D:. Nah habis itu buka program Notepad trus ketik perintah-perintah Python seperti pada gambar di bawah ini.

trus disimpen pakai nama : halo.py

Hati-hati waktu menyimpan file! waktu mengetik nama file, nama file-nya ditulis di antara tanda kutip dua ya! contoh : "halo.py"   penyebabnya karena kita kan pakai Notepad, ekstensi file Notepad adalah .txt, nah kalau kita tidak ketik nama file program Python pakai tanda kutip dua, nanti nama filenya jadi : halo.py.txt  kalo ekstensi filenya salah, nanti saat mau dieksekusi pasti salah juga (program ga bisa dijalankan)

Kalau file source code sudah disimpan dengan benar, sekarang tingga dijalankan / di-run / dieksekusi. Buka dulu Command Prompt-nya terus pinda ke folder tempat file program Python disimpan.
Lalu ketik : py halo.py (lihat gambar di bawah)





nah tuh tulisan "apa kabar duniaaaa..." sudah muncul. Berarti program telah sukses dieksekusi tanpa ada kesalahan.

Oke, saya akan coba menjelaskan tiap baris perintah di program Python yang sudah dibuat.

#! python

Perintah di atas (kayaknya sih -kan gue lagi belajar juga, jadi ya nebak-nebak aja- gak ilmiah ya?! hehehe) merupakan compiler directive yang berguna untuk interpreter Python (dan tidak berguna buat programmer, programmer mah cukup nulis perintah itu aja di baris paling atas). Catatan tambahan : yang pernah gue baca sih Python ini dibuat pakai bahasa C. Jadi ya perintah itu ngikutin bahasa C yang ada juga compiler directive-nya.

import sys

Perintah ini biasanya untuk menyertakan library atau class yang bernama sys. sys ini merupakan library atau class dasar yang harus ada di setiap program Python.

sys.stdout.write("apa kabar duniaaa...")

perintah ini adalah perintah untuk menampilkan teks. teks di pemrograman biasa disebut string. string d=harus diapit tanda kutip dua. Perintah ini diawali dengan perintah sys, berarti berkaitan dengan perintah : import sys. Coba aja perintah import sys dihapus. Pasti perintah sys.stdout.write("apa kabar duniaaa...") gak akan bisa dijalankan karena error. Dengan kata lain, pada waktu kita menggunakan suatu perintah, kita harus tau perintah itu ada di library / class apa. terus setelah kita tau nama library atau class-nya, nama library atau class tersebut di gunakan dengan perintah import.

ya gitu dulu ya belajar Python-nya... doain biar kita bisa belajar di bagian berikutnya.


Minggu, 16 Juni 2013

Belajar Pemrograman Python Bag. 1 : Instalasi

Ah iseng mau belajar Python biar tambah pinter...

Alasan : katanya Python gampang dipelajari. Sudah mendukung OOP (Object Oriented Programming). Bisa untuk game programming. Bisa untuk web programming.

Pertama download dulu Python for Windows di http://www.python.org/getit/.

Yang bikin bingung ada dua versi nih... versi 3.x sama 2.x. Biasanya yang model beginian ada masalah kompatibilitas antar versi. Dari pada mikirin perbedaannya mending download yang versi 3 aja (ver. 3.3.2)... karena baru belajar dan versi terakhir (pengalaman dari PHP yang dulu ada versi 5 sama 4... akhirnya skrg yang dipakai ya versi 5)

Trus untuk ngetik programnya pakai apa ya? mau pakai IDE atau Notepad 2? Notepad dua aja dulu lah... ntar kalau udah pinter dikit baru ganti pakai IDE khusus Python.... *ngeles... padahal lagi males download IDEnya Python*

Abis selesai download... liat ekstensi file installer-nya adalah .msi, dobel klik, jalan deh proses instalasi Python pakai wizard. Nah di bagian Customize Python 3.3.2, pilihan Add Python.exe to path dipilih dengan pilihan Entire features .... dst.

Karena Python ini seperti Java, menggunakan interpreter, jadi kita harus mengeset PATH-nya. Caranya ;
Klik tombol mouse kanan pada My Computer ‣ Properties ‣ Advanced ‣ Environment Variables

Tambahkan variabel PYTHONPATH lalu diisi dengan %PYTHONPATH%;C:\My_python_lib

Cara lain bisa pakai Command Prompt, ketik set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

Catatan : Tulisan My_python_lib di atas diganti dengan nama folder tempat Python diinstall ya (kalo di komputer sini sih di C:\python33)

nah untuk ngecek path-nya sudah benar atau ada; bukan Command Prompt, ketik : echo %PATH% (lihat gambar di bawah)






atau bisa juga cek via Windows 7 (WinXP caranya mirip-mirip) lihat gambar di bawah.












Rabu, 08 Mei 2013

Perbedaan New Line dan Carriage Return (Difference of NL and CR)

Bro and sista yang suka otak atik program untuk baca-tulis file teks biasa (plain text atau ASCII text file) wajib baca link di bawah ini yang isinya perbedaan antara new line (\n) dengan carriage return (\r) terutama yang cross platform (Unix, Linux, MacOS, Windows) ... yuk langsung ke TKP :

http://stackoverflow.com/questions/3307747/difference-between-newline-and-carriage-return-r

Jumat, 23 November 2012

Learn SQL Join with Simple Way

Right now I give super simple SQL queries to learn joins like inner join, right join, left join. These SQL commands are suitable for most RDBMS like MySQL, Oracle, SQL Server, etc. Hope you enjoy it!

Kali ini saya memberikan query-query sederhana SQL untuk belajar join seperti inner join, right join, left join. Perintah-perintah SQL yang ditulis cocok untuk sebagian besar RDBMS seperti MySQL, Oracle, SQL Server, dll. Selamat belajar!

create table pegawai (
  nip varchar(3) primary key,
  nama varchar(50),
  atasan varchar(3)
);

insert into pegawai values
  ('001','ali','001'),
  ('002','budi','001'),
  ('003','buce','001'),
  ('004','cici','002'),
  ('005','dedi','002'),
  ('006','fifi','003');
 
create table gaji (
  nip varchar(3),
  gaji int(50)
);

insert into gaji values
  ('001',6000000),
  ('002',5000000),
  ('003',4000000),
  ('004',3000000),
  ('007',2000000),
  ('008',1000000);

-- inner join 
SELECT
  pegawai.nip,
  pegawai.nama,
  gaji.gaji
FROM pegawai
inner join gaji
  on pegawai.nip = gaji.nip

-- inner join dengan alias 
SELECT
  a.nip,
  a.nama,
  b.gaji
FROM pegawai AS a
inner join gaji as B
  on a.nip = b.nip
 
-- left join
SELECT
  pegawai.nip,
  pegawai.nama,
  gaji.gaji
FROM pegawai LEFT join gaji
  on pegawai.nip = gaji.nip
 
-- right join
SELECT
  pegawai.nip,
  pegawai.nama,
  gaji.gaji
FROM pegawai RIGHT join gaji
  on pegawai.nip = gaji.nip
 
-- contoh lain
-- menampilkan nama pegawai
-- yg gajinya di atas 4 jt
SELECT
  pegawai.nama
FROM pegawai
inner join gaji
  on pegawai.nip = gaji.nip
where gaji.gaji > 4000000 

-- contoh lagi
-- menampilkan nama pegawai
-- yg blm memiliki gaji
SELECT
  pegawai.nama
FROM pegawai
left join gaji
  on pegawai.nip = gaji.nip
where gaji.gaji is null

-- contoh inner join implisit
-- (tidak memakai perintah inner join)
SELECT
  pegawai.nip,
  pegawai.nama,
  gaji.gaji
FROM pegawai, gaji
WHERE pegawai.nip = gaji.nip

create table golongan (
  nip varchar(3),
  gol int default 1,
  tglSK date
);

insert into golongan values
  ('001',6, '2000-02-02'),
  ('002',5, '2000-02-02'),
  ('003',3, '2000-03-03'),
  ('004',3, '2000-03-03'),
  ('005',2, '2002-11-11'),
  ('006',1, '2002-11-11');
 
-- inner join lebih dari dua tabel
select
  pegawai.nip,
  pegawai.nama,
  golongan.gol,
  gaji.gaji
from pegawai
inner join golongan
  on pegawai.nip = golongan.nip
inner join gaji
  on pegawai.nip = gaji.nip

Selasa, 11 Oktober 2011

SQLite, Lite Ukurannya, Lite Perintahnya

Awal mulainya sih SQLite gue cuekin. Tapi waktu mulai pakai Android... eh kok database-nya pakai SQLite ya? Nah mulai dari situ rada-rada penasaran, tapi masih agak cuek. Dan masih pakai mySQL di PHP. Padahal PHP sudah mendukung SQLite.

Belakangan... lagi mikir lagi (dulu pernah mikir) gimana caranya nempelin data yang lumayan banyak dalam file .exe tapi gampang di-manage. Berhubung belum ada bayangan, iseng-iseng cari database alternatif... nah kebetulan inget lagi SQLite... penasaran sama "lite"-nya. Seberapa "lite" sih? So, nanya mbah Gugel lah akhirnya. Nih sekelumit cerita dari mbah Gugel.

SQLite tuh yang bikin pak de Richard Hipp tahun 2000. Waktu itu pake de Hipp bekerja di General Dynamic (pabrik yang bikin pesawat tempur F-16!) yang lagi ngerjain proyeknya US Navy. Kerjaan pak de Hipp bikin program yang mau dipasang di dalam rudal penghancur kapal yang berbasis sistem operasi HP-UX dan database Informix. Mungkin pak de pikir Informix kebesaran kali ye, jadinya ya dia bikin sendiri database yang imut tapi tidak amit... maka jadilah SQLite. Dan yang paling salut sama pak de Hipp, beliau buka source code-nya untuk umum! Eh source code-nya pakai bahasa C lho (kalo di sini boro-boro dibuka... minta bayarannya selangit!).

Yuk kita kenalan sama SQLite ini :
  • Kalo Oracle, mySQL, SQL Server termasuk RDBMS (Relational DataBase Management System). SQLite termasuk ERDBMS (Embedded RDBMS). Maksudnya embedded; database SQLite sebagai library dan di-compile bersama programnya... dan menjadi bagian terintegrasi dengan program aplikasi.
  • SQLite merujuk pada SQL-92 namun pastinya ada pengurangan fitur-fitur (biar ukurannya kecil).
  • Mendukung multithread untuk baca data. Tapi kalau nulis data, menerapkan locking database (satu database dikunci, sehingga user lain tidak bisa mengubah atau menambah data pada tabel lain).
  • Secara opsional mendukung karakter Unicode.
  • Bahasa pemrograman yang didukung : BASIC, C, C++, Clipper//Harbour, Common Lisp, C#, Curl, D, Delphi, Haskell, Java, Lua, newLisp, Objective-C (Mac OS X dan iOS), OCaml, Perl, PHP, Pike, Python, REBOL, R, REALbasic, Ruby, Scheme, Smalltalk, Tcl, Visual Basic, and JavaScript. Ada juga COM (ActiveX) wrapper sehingga dapat diakses melalui JScript and VBScript. Lezaaattt :p
  • Program yang udah menyertakan SQLite di dalamnya :
  • Mozilla Firefox, Mozilla Thunderbird (bookmarks, cookies, contacts dsb.) .
  • Skype.
  • Adobe Photoshop Lightroom, Adobe AIR, Adobe Reader.
  • Ruby on Rails'.
  • Opera.
  • Service Management Facility pada Solaris dan OpenSolaris.
  • HTML5 menerapkan SQLite sebagai WebSimpleDB API.
  • Apple's iOS (SMS/MMS, Calendar, Call history, Contacts storage).
  • Symbian.
  • Nokia's Maemo.
  • Google's Android.
  • Google's Chrome browser.
  • RIM's BlackBerry.
  • Linux Foundation's MeeGo.
  • Palm's webOS.
Wew, ternyata banyak juga ya yang udah pakai.... bagi yang tertarik silahkan klik http://sqlite.org

Kamis, 23 Juni 2011

Source Code PHP Form Login yang Memiliki Fitur Remember Me Menggunakan Cookie

Di bawah ini adalah contoh program dasar pemakaian cookie pada form login yang memiliki fitur Remember Me. Semoga bermanfaat.

File logincookie.php :
<?php
if (isset($_COOKIE["nama"]) && isset($_COOKIE["pasw"])){
$nm = $_COOKIE["nama"];
$pw = $_COOKIE["pasw"];
} else {
$nm = "";
$pw = "";
}
?>
<html>
<head><title>Cookie Remember Me</title></head>
<body>
<form action="logincookie2.php" method="get">
Nama <input type="text" name="nm" value="<?php echo($nm); ?>" /><br />
Password <input type="password" name="pw" value="<?php echo($pw); ?>" /><br />
<input type="submit" value="Login" /><br />
<input type="checkbox" name="ingat[]" value="1" />Remember me!<br />
</form>
</body>
</html>

File logincookie2.php :
<?php
if (isset($_GET["nm"]) && isset($_GET["pw"])){
if ($_GET["nm"]=="admin" && $_GET["pw"]=="kosong") {
$ingat = (isset($_GET["ingat"]))?$_GET["ingat"]:null;
if ($ingat[0]=="1") {
setcookie("nama", $_GET["nm"], time()+60*5);
setcookie("pasw", $_GET["pw"], time()+60*5);
} else {
setcookie("nama");
setcookie("pasw");
}
echo "Selamat Datang";
} else {
echo "Login gagal!";
}
} else {
echo "Access denied";
}
?>

Kamis, 21 April 2011

Masalah pada Penamaan VB.Net, Database SQL Server dan Access

*glodagh!*

Berdasakan pengalaman dari dulu, bahwasannya membuat suatu nama (misal nama file, nama prosedur, nama tabel, dan nama-nama lainnya) tidak boleh menggunakan SPASI menjadi aturan baku yang tidak bisa diganggu gugat. Ternyata kemarin mendapatkan problem karena ada nama tabel yang memakai spasi!!!

Gara-garanya adalah tabel tersebut sudah dibuat sangat lama (mungkin waktu masih super bego) kemudian digunakan lagi dalam membuat program VB.Net yang mengakses database... alhasil selama tiga hari mencari-cari penyebab masalah tidak bisanya data disimpan di dalam database tanpa menggunakan perintah SQL "insert" secara eksplisit (melalui dataset). Nah setelah nama tabelnya diganti (spasinya dihilangkan), barulah programmnya berjalan dengan benar.

Kesimpulan :

Jika ingin membuat nama, nama apa saja, nama file kek, nama database kek, nama class kek... jangan menggunakan SPASI walaupun sistem operasi Windows dan aplikasi-aplikasinya mendukung pemakaian spasi untuk penamaan. Gunakanlah garis bawah (underscore) sebagai pengganti spasi, atau dapat juga menggunakan cara penulisan punuk Onta (Camel text) Contoh : Hitung Total() diganti dengan Hitung_Total() atau HitungTotal()

Sabtu, 12 Februari 2011

Alur Kerja Pembuatan Situs Web

Alur kerja atau workflow pembuatan situs web, umumnya sebagai berikut :
  • Di komputer lokal (komputer sendiri) :
    • Desain dan buat database
    • Desain dan buat file template dan CSS-nya
    • Buat file program untuk mengakses database
    • Integrasikan file template dengan file program
  • Daftar web hosting (gratis boleh, bayar oke)
  • Ubah nama host database, user, dan passwordnya dalam file program disesuaikan dengan nama host, user dan password pada web host
  • Di web host :
    • Buat database seperti yang ada di komputer lokal
    • Upload folder dan file-file
    • Dites. Jika tidak ada masalah berarti pembuatan situs selesai