Nulis-Ilmu.com

Tutorial Elektronika dan Komputer

  • Home
  • Elektronika
  • Komputer
  • Javascript

Mengenal MySQL dan phpMyAdmin

8 November 2014 By Eko Purnomo

logo-mysql

MySQL adalah sebuah perangkat lunak sistem pengelolaan database dengan sistem relational(RDBMS). Saat ini MySQL telah banyak digunakan oleh lebih dari 6 juta pengguna didunia. MySQL menggunakan standar bahasa SQL untuk mengakses database.

Beberapa perusahaan besar seperti Facebook dan Nokia juga menggunakan MySQL untuk pengelolaan database mereka. Sejak awal dirilis, MySQL merupakan perangkat lunak gratis dengan lisensi Open Source GPL (GNU Public Lisence).

Sejarah MySQL

Kelahiran MySQL diawali oleh project aplikasi berbasis website yang dikembangkan oleh perusahaan Swedia TcX. Saat itu mereka mengawali project dengan database UNIREG namun kemudian mengalami masalah karena UNIREG tidak cocok untuk database yang dinamis. TcX kemudian menemukan mSQL sebagai alternatif pengganti namun juga dianggap kurang cepat karena tidak memiliki fitur Indexing.

Kemudian salah satu programmer TcX bernama Michael “Monty” Widenius berisiatif menggabungkan UNIREG dengan mSQL yang memiliki kode sumber terbuka (Open Source). Dan pada tahun 1995 lahirlah sebuah RDBMS baru dengan nama MySQL. Dan pada tahun itu juga, TcX berubah nama menjadi MySQL AB, dengan Michael Widenius, David Axmark dan Allan Larsson sebagai pendirinya. Kata AB dalam bahasa indonesia sama artinya dengan PT(Perseroan Terbatas).

Pada tanggal 16 januari 2008 MySQL diakuisisi oleh SunMicrosystems. Dan saat Sun Microsystems diakuisisi oleh Oracle pada 20 April 2009, MySQL sepenuhnya menjadi milik Oracle namun tetap dibawah lisensi GPL.

Kelebihan MySQL

  1. Gratis karena bersifat open source dibawah licensi GPL
  2. Dapat berjalan dalam berbagai platform OS seperti Linux, Windows, MacOS dan lain-lain
  3. Mendukung penggunaan multi-user, yang artinya beberapa user dapat menggunakan secara bersamaan.
  4. Kecepatan yang sangat baik ketika menangani kode-kode perintah SQL.
  5. Mendukung sepenuhnya standar bahasa SQL untuk database.
  6. Mendukung banyak tipe variabel seperti integer, float, double, char, text, date dan datetime.
  7. Mendukung penggunaan fungsi dan operator dalam perintah SQL.
  8. Memiliki keamanan yang berlapis seperti nama host, subnetmask, ijin dan akses user serta penggunaan kata sandi ter-enkripsi.
  9. Dapat menangani basis data dalam skala besar lebih dari 50juta record dan 60ribu tabel serta 5 miliar baris.
  10. Mendukung banyak koneksi seperti TCP/IP, Unix Socket dan Named Pipes (NT).
  11. Mendukung multi bahasa termasuk bahasa Indonesia tercinta.
  12. Memiliki interface dalam berbagai aplikasi dan bahasa pemrograman menggunakan fungsi API.
  13. Dilengkapi dengan berbagai tool untuk administrasi database disertai petunjuk online.
  14. Memiliki struktur tabel yang fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.
  15. Dan yang terakhir adalah perkembangan yang cukup cepat membuat MySQL selalu terkini dalam perkembangan dunia database.

Apakah itu phpMyAdmin ?

phpMyAdmin adalah sebuah perangkat lunak untuk mengelola database MySQl dengan antarmuka grafis (GUI). Penggunaan antarmuka grafis lebih memudahkan daripada antarmuka pengelolaan asli MySQL yang berbasis text. Jadi yang pada MySQL semuanya dilakukan dengan text, pada phpMyAdmin dibuat dalam model grafis.

PHPMyAdmin dibuat dengan kode program PHP dan berjalan pada antarmuka web. Boleh dikatakan kalau PHPMyAdmin adalah sebuah aplikasi grafis berbasis web yang dipakai untuk pengelolaan database MySQL. phpMyAdmin sendiri sepertinya berasal dari kata php, MySQL dan Administrator.

Sejarah phpMyAdmin

PHPMyAdmin pertama dikembangkan oleh Tobias Ratschiller pada tahun 1998. Ratschiller mengembangkan sebuah program bernama Webadmin-MyAdmin yang dihentikan pengerjaannya oleh Petrus Kuppelwieser. Ratschiller sendiri meninggalkan project phpMyAdmin pada tahun 2001 dan selanjutnya pengembangannya diteruskan oleh Oliver Muller berserta tim seperti Marc Delisle, Michal Cihar, Sebastian Mendel, Herman van Rink.

Kelebihan phpMyAdmin

  • Memiliki antarmuka grafis berbasis web sehingga bisa diakses secara luas.
  • Mendukung banyak fitur MySQL
  • Bisa import data dari SQL dan CSV
  • Menyediakan eksport data dalam berbagai format seperti SQl, XLS, CSV, XML, PDF dan Text.
  • Terdapat monitoring proses server seperti koneksi, prosesor, memory dan sebagainya.
  • Serta masih banyk lagi kelebihan lainnya.

Instalasi MySQL Server dan phpMyAdmin

Dalam artikel sebelumnya tentang instalasi Web Server telah dijelaskan tentang instalasi MySQL dan phpMyAdmin. Untuk pengguna Windows, MySQL dan phpMyAdmin sudah langsung terinstal saat menginstal Web Server seperti XAMPP, WAMP dan AppServ.
Khusus untuk pengguna Linux Ubuntu dan turunannya sebaiknya menginstal MySQL dan phpMyAdmin secara individu melalui repository, bukan dengan perangkat lunak seperti LAMPP.
Meski demikian, MySQL server dapat didownload langsung dari situs resminya.
Untuk MySQL server dapat didownload di :
  • //www.mysql.com/downloads/ 
dan untuk phpMyAdmin dapat didownload di :
  • //sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/4.2.11/phpMyAdmin-4.2.11-all-languages.zip/download

Referensi :

  • //id.wikipedia.org/wiki/MySQL
  • //www.mysql.com/
  • //www.phpmyadmin.net/home_page/index.php
  • //en.wikipedia.org/wiki/PhpMyAdmin

Filed Under: PHP

Mengenal Database dan Penggunaannya Pada Website

7 November 2014 By Eko Purnomo

mengenal database

Seiring dengan kemajuan perkembangan website maka dibutuhkan sistem pengaturan isi website yang lebih luas, canggih dan cepat. Dalam hal ini mulai dibutuhkan sebuah alat bantu penyimpan data berupa database atau basis data yang memungkinkan akses lebih cepat dalam penanganan request dari pengguna.

Sebelumnya perlu diketahui bahwa database ini sudah muncul lebih dulu daripada website, jadi implementasi database pada website hanya merupakan pengaitan satu sama lain saja. Database sudah muncul sekitar tahun 1979 dan website baru lahir sekitar tahun 1990. Penggunaan database pertama pada website bisa dilihat dari penggunaan MySQL AB oleh perusahaan TcX pada tahun 1995.

Apakah itu Database?

Database atau basis data adalah sekumpulan informasi yang disusun dengan struktur tertentu dan sistematis pada komputer yang bisa diakses dengan sebuah program komputer untuk mendapatkan informasi dari basis data tersebut.

Didalam database terdapat tabel, field dan record yang dipakai untuk menyimpan data. Untuk dapat melayani pengguna maka dibutuhkan sebuah database server. Dan untuk mengakses data dari database server dibutuhkan sebuah database client dengan nama user tertentu.
Database harus diberi nama dan nama database harus unik dan berbeda satu sama lain didalam database server. Nama database bebas, misalnya “semesta“, “toko“, atau “kantor“.

Apakah itu Tabel ?

Tabel adalah sekumpulan relasi data yang dibuat dengan format terstruktur didalam sebuah database. Didalam tabel terdapat baris (row) dan kolom (field). Sebuah baris menginterpretasikan sebuah isi data dalam database dan selanjutnya disebut record. Dan kolom merupakan identifikasi untuk pengelompokan isi data (record) berdasarkan kesamaan tertentu dan selanjutnya disebut field.
Seperti database, tabel juga harus diberi nama dan nama tabel harus unik dan berbeda dalam sebuah database. Nama tabel bisa sama pada database yang berbeda meskipun dalam server yang sama. Contoh nama tabel pada database toko misalnya “penjualan“, “kontak” dan “order“.

Apakah itu Field ?

Field adalah istilah pada tabel database untuk menunjukkan sebuah kolom. Beberapa data dalam database dikelompokkan berdasarkan kesamaan tertentu didalam field. Sebuah field bersifat fix, statis dan menjadi header pada tabel sebuah database.
Sebagai contoh kita akan menyimpan informasi tentang kontak pelanggan yang berisi nama, nomorhp, email dan alamat. Maka pada tabel “kontak” dibuat empat field yang diberi nama “nama“, “nomorhp“, “email” dan “alamat“.

Apakah itu Record ?

Record adalah istilah pada tabel database untuk menunjukkan sebuah baris. Record merupakan struktur terendah sebuah database yang merupakan isi/data yang sebenarnya dari database. Masing-masing record pada tabel disimpan dengan urutan tertentu dengan mengacu pada Field.
Sebagai contoh pada tabel kontak tadi terdapat field “nama” maka record-nya merupakan data nama dari pelanggan seperti “Bejo“, “Abdul” dan sebagainya. Dengan cara yang sama kita bisa menetapkan record untuk field-field yang lain.

Apakah itu DBMS dan RDBMS?

Untuk mengelola sebuah atau beberapa database dibutuhkan sebuah program komputer yang disebut DBMS (Database Management System). Dengan DBMS, pengguna bisa melakukan operasi pada database seperti membuat dan menghapus tabel lalu membuat, membaca, mengupdate dan menghapus field dan record pada tabel. DBMS biasanya berupa perangkat lunak yang diinstal pada database server dan database client.
RDBMS adalah singkatan dari Relational Database Management System. Jadi RDBMS merupakan jenis DBMS yang mendukung hubungan (relation) antara tabel-tabel didalam database. Selain RDBMS ada beberapa jenis DBMS yang lain seperti Hierarchy DBMS dan Object Oriented DBMS.

Beberapa contoh DBMS terkemuka didunia diataranya MySQL, Microsoft SQL Server, Oracle, DB2, Xbase, Interbase, Sybase, Microsoft Access, dBase III dan Foxpro. Masing-masing DBMS tersebut mempunyai lisensi yang tertentu seperti MySQL yang berlisensi Open Source dan Microsoft SQL Server yang berlisensi Komersial.

Apakah itu User, Username dan Password Database ?

Didalam sebuah DMBS kita bisa membuat banyak database. Untuk mempermudah pengelolaan masing-masing database tersebut dibuatlah sistem pengelolaan berdasarkan pengguna yang selanjutnya disebut dengan User. Masing-masing User dapat mengelola database-nya sendiri tanpa interfensi dari User yang lain.
Setiap User harus mempunyai nama yang selanjutnya disebut dengan Username. Nama ini berfungsi untuk identifikasi User pada DBMS. Nama ini harus unik dan berbeda didalam sebuah Server database. Username juga diperlukan saat proses login ke database.
Untuk mengamankan akun, masing-masing Username dilindungi dengan sebuah kunci yang selanjutnya disebut dengan Kata Sandi atau Password. Jadi untuk bisa mengelola sebuah database, Seorang User harus melalukan login lebih dahulu dengan menggunakan Username dan Password yang telah ditentukan.

struktur database

Penggunaan Database pada Website

Meskipun website diciptakan pada tahun 1990, namun database mulai digunakan pada website sekitar tahun 1995. Bermula dari tahun 1994, saat itu TcX, sebuah perusahaan asal Swedia ingin mengembangkan aplikasi berbasis web dengan database UNIREG yang merupakan cikal bakal lahirnya MySQL.
Masalah muncul ketika UNIREG dianggap tidak cocok untuk aplikasi dinamis seperti web. TcX kemudian mencari alternatif dengan menggunakan mSQL(miniSQL). Namun mSQL versi 1 ini performanya kurang bagus karena belum mendukung Indexing.
Untuk mengatasi hal itu dibuatlah project untuk menggabungkan UNIREG dengan mSQL(yang kodenya bersifat open source) sehingga lahirlah database baru yang diberi nama MySQL AB pada tahun 1995. Tercatat nama David Axmark dan Michael “Monty” Widenius yang merupakan pendiri MySQL AB ini.

Referensi :

  • //en.wikipedia.org/wiki/Database
  • //id.wikipedia.org/wiki/MySQL

Filed Under: PHP

Fungsi-fungsi PHP untuk Array

6 November 2014 By Eko Purnomo

Fungsi-fungsi PHP untuk Array

PHP menyediakan beberapa fungsi bawaan untuk mengakses dan memanipulasi array. Fungsi fungsi tersebut sudah tertanam dalam core PHP sehingga bisa langsung bisa dipakai tanpa harus melalukan instalasi tambahan.

Kegunaan dari fungsi-fungsi tersebut bisa dikelompokkan dalam beberapa garis besar diantaranya seperti sotring array (mengurutkan array), mengatur pointer array dan melakukan pencarian didalam array. Setiap penggunaan fungsi harus diikuti dengan tanda kurung buka “(” dan kurung tutup “)” misalnya fungsi array().

Berikut ini beberapa fungsi PHP untuk array :

Fungsi Keterangan
array () Menciptakan sebuah array
array_change_key_case () Mengubah semua key dalam array ke huruf kecil atau huruf besar.
array_chunk () Membagi array menjadi potongan array
array_column () Mengembalikan nilai dari satu kolom dalam array masukan
array_combine () Menciptakan sebuah array dengan menggunakan unsur-unsur dari satu “kunci” array dan satu “nilai-nilai” array
array_count_values ​​() Menghitung semua nilai dari array
array_diff () Membandingkan array, dan mengembalikan perbedaan (membandingkan nilai saja)
array_diff_assoc () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai)
array_diff_key () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci saja)
array_diff_uassoc () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_diff_ukey () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_fill () Mengisi array dengan beberapa nilai
array_fill_keys () Mengisi array dengan nilai lalu menentukan kunci
array_filter () Memfilter nilai dari sebuah array menggunakan fungsi callback
array_flip () Membalikkan / mengubah kunci dengan nilai-nilai yang terkait dalam array
array_intersect () Membandingkan array, dan mengembalikan pertandingan (membandingkan nilai saja)
array_intersect_assoc () Membandingkan array dan mengembalikan pertandingan (membandingkan kunci dan nilai-nilai)
array_intersect_key () Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci saja)
array_intersect_uassoc () Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci dan nilai, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_intersect_ukey () Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_key_exists () Memeriksa apakah kunci tertentu ada dalam array
array_keys () Mengembalikan semua kunci array
array_map () Mengirim setiap nilai array ke fungsi buatan pengguna yang mengembalikan nilai-nilai baru
array_merge () Menggabungkan satu atau lebih array menjadi satu array
array_merge_recursive () Menggabungkan satu atau lebih array ke dalam satu array rekursif
array_multisort () Mengurutkan beberapa array atau multi-dimensi array
array_pad () Menyisipan sejumlah item tertentu dengan nilai tertentu ke dalam array
array_pop () Menghapus elemen terakhir dari array
array_product () Menghitung produk dari nilai-nilai dalam array
array_push () Menyisipan satu atau lebih elemen ke akhir array
array_rand () Mengembalikan satu atau lebih kunci acak dari array
array_reduce () Mengembalikan sebuah array sebagai string, menggunakan fungsi yang ditetapkan pengguna
array_replace () Menggantikan nilai-nilai dari array pertama dengan nilai-nilai dari array berikutnya
array_replace_recursive () Menggantikan nilai-nilai dari array pertama dengan nilai-nilai dari array rekursif berikutnya
array_reverse () Mengembalikan sebuah array dalam urutan terbalik
array_search () Mencari array untuk nilai yang diberikan dan mengembalikan kunci
array_shift () Menghapus elemen pertama dari array, dan mengembalikan nilai dari elemen yang dihapus
array_slice () Mengembalikan bagian tertentu dari array
array_splice () Menghapus dan menggantikan elemen tertentu dari sebuah array
array_sum () Mengembalikan hasil penjumlah nilai dalam array
array_udiff () Membandingkan array, dan mengembalikan perbedaan (membandingkan nilai saja, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_udiff_assoc () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai, menggunakan fungsi built-in untuk membandingkan kunci dan fungsi yang ditetapkan pengguna untuk membandingkan nilai)
array_udiff_uassoc () Membandingkan array, dan mengembalikan perbedaan (membandingkan kunci dan nilai, menggunakan dua fungsi kunci perbandingan yang ditetapkan pengguna)
array_uintersect () Membandingkan array, dan mengembalikan pertandingan (membandingkan nilai saja, menggunakan fungsi kunci perbandingan yang ditetapkan oleh pengguna)
array_uintersect_assoc () Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci dan nilai, menggunakan fungsi built-in untuk membandingkan kunci dan fungsi yang ditetapkan pengguna untuk membandingkan nilai)
array_uintersect_uassoc () Membandingkan array, dan mengembalikan pertandingan (membandingkan kunci dan nilai, menggunakan dua fungsi kunci perbandingan yang ditetapkan pengguna)
array_unique () Menghapus nilai ganda dari array
array_unshift () Menambahkan satu atau lebih elemen ke awal array
array_values ​​() Mengembalikan semua nilai dari array
array_walk () Menerapkan fungsi pengguna untuk setiap anggota array
array_walk_recursive () Menerapkan fungsi pengguna secara rekursif untuk setiap anggota array
arsort () Mengurutkan array asosiatif descending berdasarkan nilai
asort () Mengurutkan array asosiatif ascending berdasarkan nilai
compact () Membuat array yang berisi variabel dan nilai-nilai array tersebut
count () Mengembalikan jumlah elemen dalam array
current () Mengembalikan elemen saat ini dalam array
each () Mengembalikan pasangan kunci dan nilai sekarang dari array
end () Mengatur pointer internal array pada elemen terakhir
extract () Mengimpor variabel ke dalam tabel simbol current dari array
in_array () Memeriksa apakah nilai tertentu ada dalam array atau tidak
key () Mengambil kunci dari array
krsort () Mengurutkan array asosiatif descending berdasarkan kunci
ksort () Mengurutkan array asosiatif ascending berdasarkan kunci
list () Menetapkan variabel jika mereka bedara dalam sebuah array
natcasesort () Mengurutkan array menggunakan algoritma “natural order” case sensitif
natsort () Mengurutkan array menggunakan algoritma “natural order”
next () Memajukan posisi pointer didalam array
pos () Alias dari current ()
prev () Memundurkan posisi pointer didalam array
range () Menciptakan sebuah array yang berisi berbagai elemen
reset() Mengatur pointer internal array pada elemen pertama
rsort () Mengurutkan array terindeks dalam urutan descending
shuffle () Mengacak array
sizeof () Alias ​dari ​count ()
sort () Mengurutkan array terindeks dalam urutan ascending
uasort () Mengurutkan array berdasarkan nilai fungsi perbandingan yang dibuat oleh pengguna
uksort () Mengurutkan array berdasarkan kunci fungsi perbandingan yang dibuat oleh pengguna
usort () Mengurutkan array menggunakan fungsi perbandingan yang dibuat oleh pengguna

Referensi:

  • //www.w3schools.com/php/php_ref_array.asp

Filed Under: PHP

Cara Menggunakan PHP Filter

1 November 2014 By Eko Purnomo

cara menggunakan php filter

PHP Filter adalah cara yang digunakan untuk memvalidasi dan memfilter/menyaring masukan yang tidak aman misal dari input text. Hal ini sangat penting bagi sebuah aplikasi berbasis web yang diakses oleh banyak orang diseluruh dunia. Ekstensi PHP Filter membuat proses filtering data menjadi lebih mudah dan lebih cepat.

Mengapa perlu menggunakan PHP Filter ?

Hampir semua website sekarang menggunakan eksternal input, misal yang paling sederhara adalah untuk memberi sebuah komentar pada sebuah blog. Selanjutnya eksternal input tadi dihubungkan dengan sebuah aplikasi web service yang menangani proses submit form. Nah, PHP Filter dibutuhkan agar data yang menjadi masukan program benar-benar valid dan tidak membahayakan website.

Data-data eksternal yang menjadi input sebuah program diantaranya adalah Input data dari form, Data dari Cookies, Web services data, Server variables dan Hasil Query Database. Data-data ini harus benar-benar valid sesuai dengan kebutuhan variabel pada program dan tidak membahayakan dan mengancam keamanan sebuah website.

Fungsi-fungsi untuk PHP Filter

Ada beberapa fungsi PHP yang bisa dipakai untuk memfilter sebuah variabel, diantaranya adalah sebagai berikut :

  • filter_var() – Memfilter satu variable dengan filter tententu
  • filter_var_array() – Memfilter beberapa variabel dengan filter yang sama atau berbeda
  • filter_input – Mengambil sebuah variabel input lalu memfilternya
  • filter_input_array – Mengambil beberapa variabel input dan memfilternya dengan flter yang sama atau berbeda

Ada dua macam filter yang diset pada fungsi PHP filter diatas, yaitu Validating Filters dan Sanitizing Filters.

Contoh penggunaan fungsi filter_var() untuk memfilter variabel bertipe integer

 <?php  
$int = 123;
if(!filter_var($int, FILTER_VALIDATE_INT)) {
echo("Bukan tipe Integer");
} else {
echo("Variabel bertipe Integer");
}
?>

Penjelasan Script :

Program diatas menggunakakan fungsi filter_var dengan parameter FILTER_VALIDATE_INT untuk memfilter variabel $int. Jika benar bertipe integer maka ditampilkan pesan “Variabel bertipe Integer”. Fungsi diatas akan menampilkan “Bukan tipe Integer” jika variabel $int diisi dengan huruf misal “abc” atau campuran huruf dan angka seperti “abc999”.

Validating filters

adalah filter yang digunakan untuk memvalidasi input, misalnya mengecek URL dan Email. Validating Filters mengembalikan nilai FALSE jika salah.

Berikut ini beberapa macam Validating Filter:

Nama ID Deskripsi
FILTER_VALIDATE_BOOLEAN Mengembalikan nilai TRUE jika yang dicek bernilai “1”, “true”, “on” and “yes”, dan mengembalikan FALSE jika yang dicek bernilai “0”, “false”, “off”, “no”, and “”, NULL
FILTER_VALIDATE_EMAIL Memvalidasi nilai sebagai email
FILTER_VALIDATE_FLOAT Memvalidasi nilai sebagai float
FILTER_VALIDATE_INT Memvalidasi nilai sebagai integer,opsional dari range tertentu
FILTER_VALIDATE_IP Memvalidasi nilai sebagai alamat IP, opsional IPv4 dan IPv6
FILTER_VALIDATE_REGEXP Memvalisadi nilai terhadap regexp, kompatibel dengan Perl-regular expression
FILTER_VALIDATE_URL Memvalidasi nilai sebagai URL, opsional dengan komponen required

Contoh script menggunakan Validating Filters

 <?php  
if(!filter_has_var(INPUT_GET, "email")) {
echo("Tipe input tidak ditemukan");
} else {
if (!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL)) {
echo "E-Mail tidak valid";
} else {
echo "E-Mail valid";
}
}
?>

Penjelasan Script :

Pada contoh diatas terdapat masukan email yang dikirim dengan metode GET. Pengecekan dilakukan dua kali, yang pertama dengan fungsi filter_has_var() dan dilanjutkan dengan fungsi filter_input(). Untuk mengecek validitas masukan email digunakan fungsi filter_input dengan parameter FILTER_VALIDATE_EMAIL.

Sanitizing filters 

adalah filter yang digunakan untuk membersihkan karakter pada string. Sanitizing filters bekerja dengan mengijinkan atau melarang penggunaan karakter tertentu pada string. Sanitizing filter mengembalikan nilai string.

Berikut ini beberapa macam Sanitizing Filter:

ID Name Description
FILTER_SANITIZE_EMAIL Membuang semua karakter kecuali huruf, angka dan !#$%&’*+-/=?^_`{|}~@.[]
FILTER_SANITIZE_ENCODED Meng-encode string URL, optional memotong atau meng-encode karakter khusus.
FILTER_SANITIZE_MAGIC_QUOTES Mengaplikasikan addslashes()
FILTER_SANITIZE_NUMBER_FLOAT Membuang semua karakter, kecuali angka, +- dan opsional .,eE
FILTER_SANITIZE_NUMBER_INT Membuang semua karakter kecuali angka and +-
FILTER_SANITIZE_SPECIAL_CHARS Melepaskan karakter dari HTML encode ‘”<>& dan karakter dengan nilai ASCII kurang dari 32
FILTER_SANITIZE_FULL_SPECIAL_CHARS
FILTER_SANITIZE_STRING Tag pemotongan, opsional memotong atau meng-encode karakter khusus.
FILTER_SANITIZE_STRIPPED Nama lain dari filter “string”
FILTER_SANITIZE_URL Membuang semua karakter kecuali huruf, angka dan $-_.+!*'(),{}|\^~[]`<>#%”;/?:@&=
FILTER_UNSAFE_RAW Tidak melakukan apa-apa, opsional memotong atau meng-encode karakter khusus.

Contoh script meggunakan Sanitizing Filters

 <?php  
if(!filter_has_var(INPUT_POST, "url")) {
echo("Tipe input tidak ditemukan");
} else {
$url = filter_input(INPUT_POST,
"url", FILTER_SANITIZE_URL);
}
?>

Penjelasan Script :

Pada contoh diatas terdapat input URL yang dikirim dengan metode POST. Pengecekan dilakukan dua kali, yang pertama dengan fungsi filter_has_var() dan dilanjutkan dengan fungsi filter_input(). Dengan parameter FILTER_SANITIZE_URL pada fungsi filter_input maka semua karakter yang tidak valid akan dibuang lalu nilai baru disimpan dalam variabel $url.

    Sebagai contoh jika variabel input diberi nilai seperti ini “//www.W3ååSchøøools.com/”, variabel $url setelah proses sanitizing akan menjadi seperti ini:

    //www.W3Schools.com/

    Referensi:

    • //www.w3schools.com/php/php_filter.asp

    Filed Under: PHP

    Penanganan Exception pada PHP

    31 Oktober 2014 By Eko Purnomo

    cara menggunakan exception php

    Exception merupakan kondisi pengecualian pada program. Exception akan mengubah alur program ke mode normal jika terjadi error. Dengan kata lain, exception mengabaikan error yang terjadi dan mengerjakan proses tertentu saat exception tertangkap.

    Untuk menggunakan exception dilakukan dengan perintah try dan catch. Perintah try berisi kode-kode yang berisi pengecualian program dan perintah catch berfungsi menangkap kode kode yang dikirim oleh pengecualian pada try. Proses pengiriman kode exception ini biasa disebut dengan throw (melempar).

    Ketika exception terjadi karena dipicu oleh error, status kode program akan aman karena eksekusi program akan dialihkan ke kode program penanganan exception (exception handler). Jadi pada kondisi ini exception handler akan meresume eksekusi dari status kode yang tersimpan lalu menghentikan eksekusi script dan melanjutkannya dengan kode pada lokasi lain didalam program.

    Penggunaan dasar Exception

    Untuk menggunakan exception secara sederhana kita memakai kombinasi Try, Throw dan Catch. Pada Try berisi kode-kode perintah yang memicu error dan akan dibuat exception programnya. Hasil exception dari Try akan dilempar (Throw) dan kemudian ditangkap (Catch) lalu dibuat obyek untuk menampilkan informasi exception.

    Contoh penggunaan Exception Handler Sederhana

    <?php  
    //buat fungsi yang berisi exception didalamnya
    function cekAngka($angka) {
    if($angka>5) {
    throw new Exception("Angka harus dibawah 5");
    }
    return true;
    }

    //Memicu exception dengan perintah Try, contoh: mengecek angka 7
    try {
    cekAngka(7);
    //Jika error terjadi maka exception akan dilemparkan dan perintah dibawah ini tidak akan dieksekusi
    echo 'Jika meliha pesan ini berarti angka yang anda masukkan dibawah 5';
    }

    //menangkap exception yang dilempar oleh Try dengan catch
    catch(Exception $e) {
    echo 'Pesan Error: ' .$e->getMessage();
    }
    ?>

    Kode diatas akan menampilkan pesan error seperti ini :

    Pesan Error: Angka harus dibawah 5

    Penjelasan Script:

    Pada kode diatas terlihat proses memunculkan exception (try), melemparkan (throw) dan menangkap exception (catch) dan menampilkan informasi exception. Program dimulai dengan membuat fungsi cekAngka yang melemparkan exception jika angka yang dimasukkan lebih besar dari 5.

    Selanjutnya exception dipicu dengan perintah try yang menjalankan fungsi cekAngka(7). Exception yang dihasilkan oleh perintah try selanjutnya ditangkap oleh perintah catch yang kemudian menampilkan Pesan Error yang diset oleh perintah throw pada fungsi cekAngka.

    Kesimpulan

    Untuk menggunakan exception secara sederhana bisa di lihat dari urutan proses berikut ini

     function new_function($variable) {  
    if_condition(condition){
    throw new Exception("Message");
    } return true;
    }

    try {
    new_function(value);
    non_error_statement...;
    }

    catch(Exception $e) {
    error_message...;
    }

    Referensi:

    • //www.w3schools.com/php/php_exception.asp

    Filed Under: PHP

    Penanganan Error pada PHP

    31 Oktober 2014 By Eko Purnomo

    menangani error pada php

    Dalam pemrograman PHP sering dijumpai error karena ada kesalahan pada salah satu proses. Kesalahan ini bisa dikarenakan suatu komponen yang dibutuhkan program tidak ada atau karena syarat yang diminta program tidak terpenuhi. Seperti misalnya sebuah programm untuk membuka file namun file yang dimaksud ternyata tidak ada maka otomatis browser akan menampilkan error.

    Jika tampil pesan error pada browser, program yang kita buat akan terlihat tidak profesional dan juga memungkinkan celah yang membahayakan bagi keamanan program itu sendiri. Untuk itu perlu dibuat sebuah penanganan error yang menghentikan program dan kemudian menampilkan pesan error sesuai kondisi yang terjadi.

    Contoh script PHP yang memungkinkan terjadi error

    <?php  
    $file=fopen("coba.txt","r");
    ?>

    Dan berikut tampilan error pada browser jika file yang diminta tidak ada

    Warning: fopen(coba.txt) [function.fopen]: failed to open stream:
    No such file or directory in /var/www/php/demo.php on line 2

    Menangani Error pada PHP dengan fungsi die()

    Dalam PHP ada beberapa cara untuk menangani error, salah satunya yang paling simpel adalah menggunakan fungsi die(). Caranya adalah dengan menyeleksi kondisi lalu jika tidak terpenuhi kita taruh fungsi die(). Jika fungsi die() dieksekusi maka program akan berhenti dan script program dibawahnya tidak akan dijalankan.

    Contoh penggunaan fungsi die()

    <?php  
    if(!file_exists("coba.txt")) {
    die("File tidak ditemukan");
    } else {
    $file=fopen("coba.txt","r");
    }
    while(! feof($file))
    {
    echo fgets($file). "<br />";
    }
    fclose($file);
    ?>

    Penjelasan script:

    Contoh diatas merupakan program untuk membuka file cobe.txt (baris ke-5) dan menampilkan file baris demi baris sampai akhir file (baris ke-7 sampai baris ke-10). Pada baris ke-2 dibuat penyeleksian untk mengecek keberadaan file dengan fungsi file_exist().

    Fungsi die ditaruh pada kondisi jika fungsi file_exist() membalikkan nilai FALSE karena file tidak ada. Dengan fungsi die() maka eksekusi script akan dihentikan dan kode program dibawahnya (baris ke-7 sampai akhir) tidak dijalankan. Dengan demikian kita tidak terlalu dipusingkan dengan banyak logika penyeleksian setelahnya.

    Menangani error dengan Custom Error Handler dan Trigger Error

    Cara kedua untuk menangani error pada PHP adalah dengan membuat fungsi Custom Error lalu membuat Handler untuk menanganinya.

    Cara membuat Custom Error

    Untuk membuat custom error digunakan aturan penulisan berikut ini :

    error_function(error_level,error_message,
    error_file,error_line,error_context)

    Keterangan parameter :

    • error_level, wajib diisi. Merupakan level error untuk mendefinisikan error pada pengguna. Harus berupa nomor yang mengacu pada tabel error dibawah.
    • error_message, wajib diisi. Merupakan pesan error untuk mendefinisikan error pada pengguna
    • error_file, opsional. Merupakan nama file yang memunculkan error.
    • error_line, opsional. Merupakan nomor baris yang memunculkan error.
    • error_context, opsional. Merupakan array yang berisi semua variabel dan error yang dihasilkan pada saat error itu muncul.

    Tabel Error Report Level

    Nilai Konstan Keterangan
    2 E_WARNING Run-time error, tidak fatal. Pelaksanaan script tidak dihentikan
    8 E_NOTICE Run-time pemberitahuan. Script menemukan sesuatu yang mungkin error, tetapi juga bisa terjadi saat menjalankan script secara normal
    256 E_USER_ERROR User-generated Fatal error. Ini seperti E_ERROR yang ditetapkan oleh programmer menggunakan fungsi PHP trigger_error ()
    512 E_USER_WARNING User-generated Warning, tidak fatal. Ini adalah seperti E_WARNING ditetapkan oleh programmer menggunakan fungsi PHP trigger_error ()
    1024 E_USER_NOTICE User-generated-Notice. Ini seperti E_NOTICE ditetapkan oleh programmer menggunakan fungsi PHP trigger_error ()
    4096 E_RECOVERABLE_ERROR Catchable fatal error.  Ini seperti E_ERROR tetapi bisa ditangkap handler yang dibuat pengguna
    8191 E_ALL Semua Error dan Warning

    Contoh Membuat Custom Error :

    function customError($errno, $errstr) {  
    echo "<b>Error:</b> [$errno] $errstr<br>";
    echo "Akhir Script";
    die();
    }

    Cara mengeset Error Handler

    Untuk mengeset Error Handler digunakan fungsi set_error_handler(“Custom Error”).
    Contoh Script Custom Error dan Set Error Handler

    <?php  
    //membuat fungsi custom error
    function customError($errno, $errstr) {
    echo "<b>Error:</b> [$errno] $errstr";
    }

    //mengeset error handler
    set_error_handler("customError");

    //memicu terjadinya error
    echo($test);
    ?>

    Dan berikut tampilan error yang dihasilkan oleh program diatas :

    Error: [8] Undefined variable: test

    Menangani Error dengan sistem Reporting melalui Email

    Cara ketiga dalam menangani error adalah dengan melaporkan error tersebut. Dalam hal ini error akan dikirimkan melalui email.

    Contoh script membuat error reporting melalui email:

    <?php  
    //membuat custom error
    function customError($errno, $errstr) {
    echo "<b>Error:</b> [$errno] $errstr<br>";
    echo "Webmaster telah diberi tahu";
    error_log("Error: [$errno] $errstr",1,
    "nama@website.com","From: admin@website.com");
    }

    //mengeset error handler
    set_error_handler("customError",E_USER_WARNING);

    //memicu terjadinya error
    $test=2;
    if ($test>1) {
    trigger_error("Angka harus 1 atau lebih kecil",E_USER_WARNING);
    }
    ?>

    Tampilan pada browser

    Error: [512] Angka harus 1 atau lebih kecil
    Webmaster telah diberi tahu

    Tampilan pesan yang diterima email

    Error: [512] Angka harus 1 atau lebih kecil

    Referensi:

    • //www.w3schools.com/php/php_error.asp

    Filed Under: PHP

    • « Previous Page
    • 1
    • …
    • 49
    • 50
    • 51
    • 52
    • 53
    • …
    • 60
    • Next Page »

    Kategori

    • Android
    • Blogging
    • CSS
    • Desain
    • Elektronika
    • HTML
    • Internet
    • Javascript
    • Komputer
    • Mikrokontroler
    • PHP
    • Website

    Pos-pos Terbaru

    • Rangkaian Adaptor 12 Volt 3 Ampere
    • 10 Aplikasi Transportasi Online Terbaru 2018
    • 3 Cara Screenshot di Laptop Windows
    • Rangkaian Adaptor 12V 35Ampere
    • Komunitas Desainer Kampung Jepara
    • Solder Yang Bagus dan Berkualitas
    • Cara Melewatkan Parameter ke dalam Fungsi pada Bahasa C
    • Parameter Dalam Bahasa C: Formal dan Aktual
    • Prototipe Fungsi dalam Bahasa C
    • Cara Menggunakan Fungsi dalam Bahasa C
    • Home
    • Privacy
    • Disclaimer
    • Kontak

    Copyright © 2024 · Nulis-ilmu.com