menu

Jumat, 24 Juni 2011

Mencegah Direct Access Pada File PHP


Mencegah Direct Access Pada File PHP web desain grafis
Salam, ini adalah tulisan pertama saya setelah liburan panjang akhir puasa, dan lebaran Iedul Fitri. Lama juga ilmuwebsite vakum ternyata, tapi tidak dengan berbagai free services yang kami tawarkan, numpang promosi.. :D. Yang penting budaya sharing kembali lagi dilakukan. Sebelum ke inti dari artikel ini, izinkan saya … Mengucapkan Mohon Maaf jika sebelum-sebelumnya saya melakukan kesalahan kepada anda sekalian, baik yang disengaja maupun tidak disengaja, Mohon Maaf Lahir dan Batin.
Dulu sekali, saya pernah membuat 2 tutorial yang menyinggung masalah PHP Redirect, dimana redirect ini sebetulnya bisa dimanfaatkan ketika user telah melakukan pengisian form, maka diredirect ke satu halaman yang berisi informasi formnya itu telah diisi dengan benar, dan informasi lain-lain. Namun untuk tutorial kali ini berbeda dengan 2 tutorial yang tadi saya sebutkan. Tutorial kali ini lebih membahas kepada file phpnya itu sendiri. Yang saya maksud di sini adalah pengaksesaan secara langsung kepada suatu file php.
Misalkan seperti ini, anda membuat sebuah file php, di mana anda tidak menginginkan file phpnya ini di akses secara langsung melalui urlnya, tetapi menginginkan file php hanya dapat dijalankan ketika di include oleh file lain. Dan anda menampilkan peringatan Forbidden seperti ini ketika file tersebut diakses secara langsung.
Bagaimana melakukan ini semua? Silahkan baca tutorial ini sampai habis.
Kita membutuhkan setidaknya 2 buah file php. Yang pertama adalah index.php isinya adalah seperti ini :
[code]<br />
<?<br />
define(active, "yes");<br />
require_once "page.php";<br />
?><br />
[/code]
Kemudian yang kedua adalah page.php. Dan isinya adalah seperti ini :
[code]<?<br />
if (active == "yes"){<br />
echo "i am inside";<br />
}<br />
<br />
else{<br />
echo "You Can't Access this page ... ";<br />
}<br />
?>[/code]

Ketika kita mengakses url file index.php melalui browser, maka yang terjadi adalah, variable dan fungsi yang ada pada file page.php itu di jalankan di file index.php, ini terjadi karena bantuan constant yang ada pada index.php. Sedangkan tampilan “You Can’t Access this page …”  didapatkan ketika kita mengakses secara langsung url file page.php, ini terjadi karena constantnya itu tidak ada atau tidak didefinisikan, sehingga yang terjadi adalah “You Can’t Access this page …”. Bagaimana? Sangat mudah sekali bukan?
Selamat mencoba.

Decrypt MD5


suatu akses keamanan php
Sebagai tambahan teman2 yang mau mencoba tool decrypt md5 silahkan coba tool ini: http://md5decryption.com
*masukan: kalau teman2 ingin mengencrypt sesuatu dengan aman, gunakan 2x encrypt, pertama md5 setelah itu ecnrypt lagi dengan sha1
dijamin ga bisa di decrypt :D

Mengenal Library ADODB PHP

Assalamu’alaikum wr wb.
Baik, kali ini saya akan coba menjelaskan tentang AdoDB. ADODB merupakan sebuah kumpulan pustaka program (Library) untuk bahasa pemrograman PHPdan Phyton yang dikembangkan berdasarkan konsep ActiveX Data Object (ADO) milik Microsoft. Dengan adanya library ADODB ini, memungkinkan para pengembang software (programer) menuliskan kode program menjadi lebih konsisten dalam berkomunikasi dengan databaseKarena library ADOdb ini telah dilengkapi fitur-fitur yang instan yang dapat digunakan untuk memanipulasi data dalam database. Keuntungan utama yang diperolah dari penggunaan pustaka ADOdb adalah perubahan database pada sisi aplikasi dimungkinkan dengan minimnya perubahan kode program atau perubahan kode program hanya terjadi pada baris kode untuk koneksi ke database saja.
Untuk saat ini library ADOdb telah mensupport beberapa vendor database seperti : MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MS SQL, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, and generic ODBC, ODBTP. The Sybase, Informix, FrontBase and PostgreSQL, Netezza, LDAP. ADOdb juga telah mensupport penuh PHP5. Library ADOdb versi terakhir yang dirilis sampai artikel ini ditulis adalah Adodb510.
Dibawah ini saya berikan contoh penggunaan library ADOdb untuk koneksi database :
Pertama, download library ADOdb kemudian ekstrak dalam sebuah folder lalu buatlah file .php dengan nama koneksi.php dan letakkan satu folder dengan folder ADOdb.
Kemudian file koneksi.php tersebut disi dengan kode seperti dibawah ini :
debug = true;

 // Koneksi Ke Database
$status = $db->Connect(DBHOST,DBUSER,DBPASS,DBNAME);

 if ($status ) echo 'Koneksi Sukses'
 else echo 'Koneksi Gagal ' . $db->ErrorMsg();
 ?>
Beberapa method yang sering digunakan untuk memanipulasi database antara lain :
- Untuk Eksekusi query
$db->Execute("DELETE FROM nama_tabel WHERE id = '$id'");
- Mengambil data dari database yang akan dimasukan dalam sebuah array()
$db->GetAll("SELECT * FROM nama_tabel");
//atau
$db->GetRow("SELECT * FROM nama_tabel");
- Mengambil satu buah record dari database, biasanya untuk query dengan klause WHERE dan data yang akan ditampilkan satu record
$db->GetOne("SELECT * FROM nama_tabel WHERE id='$id'");
- Untuk men-debug query ketika data yang dipanggil tidak muncul atau digunakan untuk mengecek kesalahan. Jika diset 1 atau TRUE maka error eksekusi query akan ditampilkan.
$db->debug = 1;
- Mem-parse array (fungsinya sama dengan fungsi print_r() dalam php). Hanya saja untuk adodb_pr() array() akan ditampilkan lebih rapi sehingga mudah untuk dibaca.
adodb_pr($array);
Bagi temen-temen yang mau download adodb. Bisa klik disini atau bisa langsung aja kunjungiwebsite adodb.
Mungkin itu yang bisa saya share kali ini. Jika ada kesalahan mohon dimaafkan. Masih newbie..hehhee
Wassalamu’alaikum wr.wb

merubah nama domain localhost


Merubah Nama Domain Localhost web desain grafisAssalamu’alaikum wr. wb.
Bagi temen-temen semua khususnya yang hoby coding dengan php mungkin dah nggak asing lagi dengan kata “localhost”. Yup… localhost merupakan domain default bawaan webserver. Jika teman-teman selesai menginstal webserver (misal: xampp, wamp, appserv, easyphp, dsb ) kemudian ingin mengetahui hasil instalan web server di komputer kita berhasil atau nggak, pasti yang pertama kali yaitu mengisi address bar browser dengan “localhost”.Nah pernahkah anda punya keinginan untuk mengubah dengan nama lain biar seolah-olah kita benar-benar mengakses web dengan domain yang telah kita beli di jasa penyedia hosting?? Mungkin banyak orang sudah mengetahui trik ini, tapi saya rasa banyak juga yang belum tahu.
Trik ini saya dapat dari tempat kerjaku yaitu menambahkan host di local server atau di localhost kita. Jadi misal kita ingin aplikasi web yang telah di buat di localhost ketika mengaksesnya lewat browser bukan lagi http://localhost/ tetapi http://namadomain.com/ maka kita perlu menambahkan host ke server lokal di komputer kita. Dengan kata lain kita ingin membuat nama alias dari localhost.
Oke, kita mulai saja.
Pertama buka Windows Explorer, kemudian akses alamat ini : C:WINDOWSsystem32driversetc. Setelah dibuka maka akan menemukan beberapa file antara lain : host, lmhost, networks, protocol, dan services.
Edit file host pakai notepad++  atau file editor lain. Setelah dibuka akan muncul text default :
# Copyright (c) 1993-1999 Microsoft Corp.
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
Setelah file tersebut dibuka tambahkan baris di bawah tulisan “127.0.0.1 localhost” sesuai dengan nama domain yang dikehendaki misal domaingue.com. Jadi file tersebut setelah ditambahkan akan menjadi seperti ini :
# Copyright (c) 1993-1999 Microsoft Corp.
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
127.0.0.1 domaingue.com
Setelah itu simpan atau Ctrl+S. Kemudian buka browser dan ketikkan domaingue.com maka akan diarahkan ke localhost kita :D.
Catatan : Setau saya tips ini berlaku hanya di windows, untuk inux triknya sedikit berbeda, tapi masih bermain table name server, pada file host juga.
Terima Kasih. Semoga bermanfaat.
Wassalamu’alaikum wr wb

Menggunakan Echo atau Print


Menggunakan Echo atau Print web desain grafisHalo, selamat datang kembali di artikel belajar php ilmuwebsite.com yang kesekian kalinya. Dengan Al-k di sini, saya akan coba bahas dua buah fungsi yang sering kita gunakan, yakni echo dan print, kadang kita dibuat pusing antara dua pilihan tersebut, menggunakan echo atau print ketika ingin menampilkan isi dari suatu variable, atau hanya sekedar menampilkan text biasa sebagai alert dari suatu proses yang telah dikerjakan. Echo atau Print? Echo atau Print? Echo atau Print? begitu seterusnya… Sedikit bingung memang. Selain echo dan print php juga menyediakan banyak alternatif untuk syntax yang lain, beda fungsi namun tugasnya masih sama, tambah pusing, tambah bingung.
Penulis sendiri cukup bingung memilih salah satu dari keduanya, echo atau print? echo atau print? namun setelah mempelajari berbagai CMS yang ada seperti joomla, drupal, wordpress, ternyata mereka para web developer cenderung menggunakan echo ketimbang print, lantas apa alasannya???
Mari kita dalami. Seorang developer bahasa php pernah melakukan pengetesan, dan hasilnya adalah echo itu 15% lebih cepat prosesnya ketimbang fungsi print (dalam milisecond). Dan sudah menjadi rahasia umum jika print itu merupakan fungsi yang mengembalikan nilai didalamnya (returning value). Dan ada alasan lain mengapa para developer kebanyakan lebih menyukai menggunakan echo ketimbang print, alasan lain adalah, efisiensi waktu, karena echo itu cuma membutuhkan 4 huruf yang harus diketik, sedangkan print itu memiliki 5 huruf untuk diketik. Tapi memang ini kenyataannya. Seorang programmer malas menulis huruf ‘t’. Dan ini sudah menjadi naluri alami seorang manusia, memilih yang lebih singkat. Toh hasilnya sama saja.
Oke, untuk efisiensi selanjutnya adalah penggunaan :
echo “$variable1 dan” . “$variable2  yang akan ditampilkan” . “diletakkan disini”;
ternyata memakan banyak resource, karena tanda titik  memiliki fungsi untuk mengadd/menambahkan isi suatu variable, bukan menyambung atau meneruskan. Beda antara menambahkan dengan meneruskan adalah seperti ini :
Menambahkan itu memiliki arti, membuka variable baru kemudian menambahkan isi kedalam variable tersebut, lalu menutup variable tersebut.
Sedangkan menyambung atau meneruskan memiliki arti, variable-nya itu sudah dibuka  tinggal meneruskan isi variablenya.
Menambahkan terdiri dari tiga proses, sedangkan menyambung atau meneruskaan cuma melakukan satu proses.
penggunaan echo yang baik adalah sebagai berikut :
echo $variable , “dan” , $variable2, “yang akan ditampilkan” , “diletakkan disini” ;
saya memisahkan setiap kata disini hanya sebagai simulasi dari kasus sesungguhnya. Echo yang baik itu bukan menggunakan tanda titik untuk menyambung setiap variable, atau menampilkan text, tapi menggunakan tanda koma. Sehingga proses lebih cepat, dan resource yang dibutuhkan semakin sedikit.
Selamat menggunakan echo. :)

Membuat Fungsi Dapat Mengembalikan Lebih Dari Satu Nilai


Membuat Fungsi Dapat Mengembalikan Lebih Dari Satu Nilai web desain grafisOke, dalam belajar php kali ini saya akan coba jelaskan bagaimana membuat suatu fungsi yang dapat mengembalikan lebih dari satu nilai, atau istilah aslinya, returning multiple value from function in php. Inti dari fungsi tersebut adalah penggunaan array dan fungsi list();. Ya, di sini saya akan coba memberikan sebuah contoh fungsi yang dapat memisahkan nama depan dan nama belakang dari nama seseorang. Buatlah sebuah file dengan nama rvalue.php atau anda dapat memberikan nama lain yang anda inginkan.

Isi file tersebut dengan :

< ?php
function double_value($namalengkap)
{
$depanbelakang = explode(” “, $namalengkap);
$nama_depan = $depanbelakang[0];
$nama_belakang = $depanbelakang[1];
return array($nama_depan, $nama_belakang);
}
$namalengkapnya = “Loka Dwiartara”;
list($namadepannya, $namabelakangnya) = double_value($namalengkapnya);
echo “Nama Lengkap : “.$namalengkapnya.”<br>”;
echo “Nama Depan : “.$namadepannya.”<br>”;
echo “Nama Belakang : “.$namabelakangnya ;
?>
Inti dari fungsinya …
ketika sebuah variable dijadikan isi dari parameter
double_value($namalengkap)
pisahkan nama depan dan belakang dengan memanfaatkan spasi dan masukkan ke dalam array
$depanbelakang = explode(” “, $namalengkap);
sehingga nantinya untuk dapat mengakses nama depan nya memanfaatkan variable $depanbelakang[0]
dan untuk mengakses nama belakang nya dapat menggunakan variable $depanbelakang[0]
kemudian lakukan kembalikan nilai dalam bentuk array
return array($nama_depan, $nama_belakang);
dengan fungsi list() ambil kedua nilai yang berbentuk array
list($namadepannya, $namabelakangnya) = double_value($namalengkapnya);
kemudian tampilkan dengan memanfaatkan fungsi echo

echo “Nama Lengkap : “.$namalengkapnya.”<br>”;
echo “Nama Depan : “.$namadepannya.”<br>”;
echo “Nama Belakang : “.$namabelakangnya ;

Itu merupakan algoritma salah satu contoh membuat fungsi dapat mengembalikan dua nilai. Selamat mencoba

PHP dan Class Part2


PHP dan Class Part2 web desain grafisYah, ketemu lagi dengan saya.. :) kalau dulu saya telah membahas tentang class, maka kali ini saya akan membahas tentang pewarisan. Pewarisan atau dalam OOP biasa disebut dengan Inheritance berfungsi untuk menggunakan kembali method dari suatu kelas yang sebelumnya telah dibuat. Contohnya begini, pada class A, anda
gunakan method hallo. Lalu pada class B, bila anda ingin memanggil method hallo tersebut, anda cukup memanggilnya dari class A, tanpa harus membuat ulang kembali method hallo tersebut. Pada OOP, Inheritance ada 2 jenis. Yakni Single inheritance dan multiple Inheritance.
Maksud dari single inheritance adalah class anak mendapat turunan langsung dari class induknya. Sedangkan multiple inheritance, class anak mendapat turunan dari class ibu dan ayahnya. hehe…:) (bingung gimana bahasanya….pokoknya lebih dari satu class deh..).
Contoh pewarisan dalam PHP:
  class induk {
  var $induk = “induk”;
  function induk () { // ini merupakan konstruktor
  $this->induk;
  }
  }
  class anak extends induk{
  function anak () {
  print $this->induk;
  }
  }
  $anak = new anak ();
?>
Hasilnya : induk.
Penjelasan :
Pada class induk, divariabelkan kata “induk”. Lalu kata induk tersebut diwariskan pada class anak. Sehingga pada saat kita mencetak class anak, dapat dipanggil variabel induk tadi dari class induk

Twitter Delicious Facebook Digg Stumbleupon Favorites More