Upload File menggunakan PHP

Pada bahasan kali ini , kita akan belajar bagaimana mengupload data menggunakan php. Pada tutorial kali ini, kita memberikan filtrasi/validasi tipe file yang bisa di upload dan ukuran file yang di upload.

Misalnya pada file upload kita dapat memberikan batasan ketentuan sebagai berikut:

1. Hanya mengizinkan file dengan type pdf atau zip

2. Data maksimum yang dapat di upload adalah 2 MB

Script selengkapnya untuk membuat aplikasi upload file menggunakan php adalah sebagai berikut.

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”>

<html xmlns=”http://www.w3.org/1999/xhtml&#8221; xml:lang=”en” lang=”en”>

<head>

<title>Upload File</title>

</head>

<body>

<form action=”<?php $_SERVER[‘PHP_SELF’];?>”

method=”post” enctype=”multipart/form-data”>

File:<input />

<input value=”Upload”/>

</form>

<?php

if (isset($_POST[‘submit’])

&& isset($_FILES[‘fl’])){

//lokasi pada direktori upload

$dir=’./upload/’;

$file = $_FILES[‘fl’][‘tmp_name’];

$name = $_FILES[‘fl’][‘name’];

$info = pathinfo($name);

//memastikan file tdk kosong

if(!is_uploaded_file($file)){

exit(‘No file selected..’);

}

//menetapkan data maksimu file yang di upload

if(filesize($file)>2000000){

echo ‘ukuran file’.filesize($file).'<br />’;

exit(‘file terlalu besar ukuran file maksimum 2 MB’);

}

//menetapkan tipe file

if($info[‘extension’] == ‘pdf’ || $info[‘extension’] == ‘zip’ ){

echo’tipe file pdf atau zip’;

} else{

exit(‘maaf hanya bisa upload file pdf atau zip’);

}

if(!move_uploaded_file($file, $dir.$name)){

echo ‘Unable to upload file’;

}else {

echo’FIle uploaded..’;

}

}

?>

</body>

</html>

Simpan dengan nama upload data.php

Maka akan didapatkan tampilan seperti dibawah ini.

pada tombol Browse kita dapat mencari letak directory file yang ingin kita upload, selanjutnya kita dapat meng’klik’ tombol upload.

apabila file yang kita upload bukan file yang bereksistensi PDF atau ZIP maka akan keluar pesan seperti diperlihatkan pada gambar dibawah ini.

******* SELAMAT MENCOBA *******

Aplikasi Form LOGIN

Form login merupakan interface awal sebuah program aplikasi dan merupakan aplikasi permulaan dari aplikasi database tingkat lanjut dan merupakan lanjutan dari aplikasi-aplikasi sederhana sebelumnya.

berikut merupakan scrip dari aplikasi FORM LOGIN.

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”>

<html>

<head>

<title>Login Form </title>

<style>

#apDiv1 {

position:absolute;

width:400px;

height:330px;

z-index:1;

left: 460px;

top: 140px;

background-color: green;

border: 4px solid Blue;

}

#apDiv3 {

position:absolute;

width:80px;

height:25px;

z-index:2;

left: 289px;

top: 274px;

}

.style3 {

font-size: 12px;

font-weight: bold;

}

#apDiv2 {

position:absolute;

width:450px;

height:120px;

z-index:2;

top: 0px;

left: 2px;

}

#header{

width:400px;

height:90px;

background-image: url(gambar3.JPG);

}

body {

background-image: url(gambar1.JPG);

}

</style>

<script type=”text/javascript”>

function error1()

{

alert(‘Masukkan Username dan Password!!! ‘);

}

function coba()

{

if(form1.pass.value == “” || form1.user.value==””)

{

error1();

}

}

</script>

</head>

<body onLoad=”document.form1.user.focus();”>

<form method=”post” action=”coba.php”>

<div>

<div>

</div>

<div>

<div align=”center”><strong><br>User Name :</strong>

<br>

<input name=”user” size=”35″ value=”” style=”background-color:grey”>

<br>

<br>

<strong>Password : </strong>

<br>

<input name=”pass” size=”35″ style=”background-color:grey”>

<br>

<br>

</div>

</div>

<br>

<div>

<input name=”submit” value=” E N T E R ” onClick=”check()”>

</div>

<span class=”style3″>&copy; Created by Vina

</div>

</form>

</body>

</html>

Simpan dengan nama formlogin.html

kemudian dilanjutkan membuat scrip untuk php

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;

<html xmlns=”http://www.w3.org/1999/xhtml”&gt;

<head>

<title>Form Administrator</title>

</head>

<body>

<?php

if(($_POST[‘user’]==’vina’) AND ($_POST[‘pass’]==’pentium’)) {

echo ‘Selamat Anda Telah Masuk Halaman Administrator Dengan Account :’.$_POST[‘user’];

echo ‘<br><br>Welcome, Mr/Mrs ‘ . $_POST[‘user’];

}

else {

echo “<br><br><br><body text=’green’><strong><center>Mohon Cek Kembali Username dan Password Anda<br><br><a href=’cobatugaslogin.html’><h4>Kembali Ke Login</h4></a></center></strong></body>”;

}

?>

</body>

</html>

simpan dengan nama coba.php, maka akan menghasilkan tampilan sebagai berikut.

masukkan user name: vina ; dan password: pentium dan klik button “ENTER”, maka akan menghasilkan tampilan seperti gambar dibawah ini.


******* SELAMAT MENCOBA *******

PROGRAM SEDERHANA “GENERATE TABEL”

Untuk membuat  program  sederhana  untuk  men-generate sel  tabel  secara  fleksibel. Tekniknya,  buat  sebuah  fungsi  yang  menerima  argumen  berupa  jumlah  sel dan jumlah kolom. Jadi, pembentukan sel tabel didasarkan pada nilai jumlah sel dan jumlah kolom yang diberikan. Sebagai contoh, hasil program dengan argumen 15 (sel) dan 5 (kolom). Maka Sintax untuk program tersebut adalah

<body>

<form method=”post” action=”tabel.php”>

<p><font color=”green” face=”comic sans ms” size=”5″><strong>GENERATE TABEL</strong></p>

<table width=”277″ border=”0″>

<tr>

<td width=”89″>Jumlah Baris</td>

<td width=”172″><strong>: </strong><input name=”totalBaris” onKeyUp=”getmax();”></td>

</tr>

<tr>

<td><label>Jumlah Kolom</label></td>

<td><strong>: </strong><input id=”totalKolom” onfocus=”this.select();”></td>

</tr>

<tr>

<td>Jumlah Sel</td>

<td><strong>: </strong><input id=”totalSel” onFocus=”this.select();”></td>

</tr>

<tr>

<td>Sel Maksimal</td>

<td><strong>: </strong><input id=”jmlSelMax” readonly=”true” style=”background-color:#999999″>

</td>

</tr>

<tr>

<td>

<div align=”center”>

<br />

<input type=”reset” value=”Reset”>

</div></td>

<td>

<div align=”right”>

<br />

<input type=”submit” value=”Generate!”>

</div></td>

</tr>

</table>

</form>

<script language=”JavaScript”>

<!–

function getmax() {

var R = parseInt(document.getElementById(‘totalBaris’).value);

var C = parseInt(document.getElementById(‘totalKolom’).value);

var X = parseInt(document.getElementById(‘totalSel’).value);

var cellmax = document.getElementById(‘jmlSelMax’);

var total = 0;

total = R * C;

cellmax.value = new String(total);

if (X > total)

{

alert(‘Jumlah sel yang anda inginkan melewati batas maksimal sel =’ + total);

document.getElementById(‘totalSel’).value = new String();

}

}

//–>

</script>

simpan dengan nama generate.html

maka hasilnya:

kemudian isikan jumlah baris, kolom dan sel yang ingin dibuat..misalkan jumlah baris isikan 3, jumlah kolom 5 dan sel 15. hasil tabel yang dapat di generate adalah seperti gambar di bawah….

**************** SELAMAT MENCOBA ****************

PASSING BY VALUE VS PASSING BY REFERENCE

1.PASSING BY VALUE
Argumen fungsi yang dilewatkan secara pass by value (default dalam php) berarti membuat copy dari argumen yang asli sehingga argumen asli tersebut tidak ikut berubah dengan adanya proses pada fungsi terhadap argumen tersebut.
Secara default, semua nilai yang di-pass masuk atau keluar dari fungsi adalah passing by value, bukan by reference. Ini berarti PHP membuat copian dari nilai original dan nilai copian itulah yang kita akses dan kita manipulasi, bukan nilai originalnya. Dengan begitu bagaimanapun kita ubah nilai itu, tidak akan mengubah nilai originalnya.

Sintaks:

<?php
function jumlah($nilai) {
$nilai++;
}
$input=5;
jumlah($input);
echo $input;
?>

Simpan dengan nama passing by value.php

Hasil:

2.PASSING BY REFERENCE
Argumen fungsi yang dilewatkan secara pass by reference berarti membawa argumen asli ke dalam fungsi sehingga argumen asli tersebut akan ikut berubah dengan adanya proses pada fungsi terhadap argumen tersebut.
Berbeda dengan passing by value yang bersifat mengkopi, passing by reference memberikan nilai aslinya untuk diakses dan dimanipulasi. Untuk mengubah jadi passing by reference, kita hanya cukup menambahkan operator & pada argumennya.

Sintaks:
<?php
function jumlah(&$nilai) {
$nilai++;
}
$input=5;
jumlah($input);
echo $input;
?>

Simpan dengan nama passing by reference.php
Hasil:

**************** SELAMAT MENCOBA ****************

PROGRAM APLIKASI FORM PEMESANAN MAKANAN/MINUMAN MENGGUNAKAN JAVASCRIPT

Banyak program aplikasi yang dapat dibuat menggunakan Javascript. Salah satunya adalah  program aplikasi form pemesanan makanan/minuman. Program alikasi ini dapat dimanfaatkan oleh berbagai warung atau rumah makan untuk memudahkan pelayanan terhadap customer

Adapun program aplikasi pemesanan makanan/minuman yang dibuat memiliki spesifikasi antara lain:

  • Field Harga, Jumlah Total, Diskon, dan Jumlah Dibayar bersifat read-only
  • Jika  pesan  disi,  maka  field  jumlah  total  secara  otomatis  akan menghitung totalnya, termasuk juga field jumlah dibayar.
  • Rumus:

Jumlah Total = ∑ (harga * pesan)

Jumlah Dibayar = Jumlah Total – Diskon

  • Jika  pembelian  lebih  dari  50000,  maka  field  diskon  secara  otomatis akan  berisi  nilai  diskon  sebesar  10000  (tidak  berlaku  kelipatannya) dan otomatis pula field jumlah dibayar akan berkurang
  • Jika tombol Batal diklik, maka semua field Pesan akan dibersihkan

Tampilan program aplikasi pemesanan makanan/minuman tampak seperti gambar dibawah ini:

Sebelum memulai membuat program aplikasi ini, sebaiknya terlebih dahulu mengetahui tentang Javascript.

1. Active Web Page

Sebagaimana  diketahui,  HTML  merupakan  model  dokumen  yang  statis,begitu ditampilkan tidak akan berubah sampai ada aktivitas navigasi. Adapun untuk  menjadikan  HTML  sebagai  halaman  dinamis  atau  aktif,  kita  bisa memanfaatkan bahasa scripting.

2. DHTML dan JavaScript

Scripting  merupakan  jenis  lain  dari  pemrograman,  yang  umumnya  lebih mudah  dipahami.  Script  dapat  disisipkan  ke  dalam  dokumen  HTML  dengan menggunakan  tag  <script>.  Tidak  seperti  style  sheet,  script  bisa  terlihat  di dalam <head> ataupun <body>.

DHTML  (Dynamic  HTML)  merupakan  suatu  teknik  untuk  menciptakan halaman  web  yang interaktif  dengan  cara  mengombinasikan  elemen-elemen seperti HTML, style sheet, dan scripting. Jadi, DHTML bukanlah suatu jenis bahasa  pemrograman  melainkan  hanya  sekadar  istilah  saja.  Pada  bagian  ini, pembuatan DHTML akan dilakukan dengan memanfaatkan JavaScript.

3. Elemen Dasar JavaScript

Sebagaimana  bahasa  pemrograman  umumnya,  JavaScript  terbentuk  atas elemen-elemen fundamental. Di sini kita tidak akan mengulas elemen-elemen tersebut,  melainkan  langsung  membahas  beberapa  komponen  dasar  yang kerap digunakan saat bekerja dengan JavaScript.

Kotak Dialog

Dukungan Scripting

Merujuk Elemen

Event

Linked Scripting

4. Me-retrieve Nilai

Saat  bekerja  dengan  elemen-elemen  masukan—seperti  text  field,  select,  dan check  box—HTML,  kita  bisa  memanfaatkan  JavaScript  untuk  operasi validasi.  Adapun  langkah  penting  terkait  dengan  elemen-elemen  ini  adalah pengambilan nilai.

Text Field

Select (Combo Box)

Check Box

5. Memilih Item Check

Agar  pemilihan  item  check  box  bisa  lebih  efisien,  kita  dapat  menggunakan

pendekatan check/uncheck all.

6. Window

Menciptakan Window Di  dalam  window  aktif,  kita  juga  bisa  menciptakan  window  baru  melalui method window.open().

Script dari program aplikasi pemesanan makanan/minuman adalah seperti tampak di bawah ini

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”&gt;

<html>

<head>

<title>Warung Spesial</title>

</head>

<body>

<!–Letakkan Listing Code JavaScript disini–>

<h3>Form Pemesanan Berbasis JavaScript</h3>

<form action=”#”>

<table border=”1px”>

<tr bgcolor=”pink”>

<th>No</th>

<th>Makanan/Minuman</th>

<th>Harga</th>

<th>Pesan</th>

</tr>

<tr>

<td width=”15px”>1</td>

<td width=”200px”>Bakso Istimewa</td>

<td width=”85px” bgcolor=”pink”>@ <input name=”bakso” value=”12000″ size=”6″ disabled=”true”/></td>

<td width=”150px”><input name=”qBakso” value=”0″ onChange=”hitungPesan()”/></td>

</tr>

<tr>

<td>2</td>

<td>Soto Spesial</td>

<td bgcolor=”pink”>@ <input name=”soto” value=”10000″ size=”6″ disabled=”true”/></td>

<td><input type=”text” value=”0″ onChange=”hitungPesan()”/></td>

</tr>

<tr>

<td>3</td>

<td>Mie Ayam Super</td>

<td bgcolor=”pink”>@ <input name=”mie” value=”15000″ size=”6″ disabled=”true”/></td>

<td><input type=”text” value=”0″ onChange=”hitungPesan()”/></td>

</tr>

<tr>

<td>4</td>

<td>Es Degan</td>

<td bgcolor=”pink”>@ <input name=”degan” value=”7000″ size=”6″ disabled=”true”/></td>

<td><input type=”text” value=”0″ onChange=”hitungPesan()”/></td>

</tr>

<tr>

<td>5</td>

<td>Es Campur</td>

<td bgcolor=”pink”>@ <input value=”7000″ size=”6″ disabled=”true”/></td>

<td><input type=”text” value=”0″ onChange=”hitungPesan()”/></td>

</tr>

<td colspan=”3″ align=”right”>Jumlah Total</td>

<td><input type=”text” disabled=”true” /></td>

</tr>

<td colspan=”3″ align=”right”>Diskon</td>

<td><input type=”text” disabled=”true” /></td>

</tr>

<td colspan=”3″ align=”right”>Jumlah Dibayar</td>

<td><input type=”text” disabled=”true” align=”right”/></td>

</tr>

</table><br/>

<input value=”BATAL” onClick=”resetForm()” />

</form>

</body>

</html>

-SELAMAT MENCOBA-

Membuat Kalkulator Sederhana

Active Web Page

Sebagaimana  diketahui,  HTML  merupakan  model  dokumen  yang  statis,begitu ditampilkan tidak akan berubah sampai ada aktivitas navigasi. Adapun untuk  menjadikan  HTML  sebagai  halaman  dinamis  atau  aktif,  kita  bisa memanfaatkan bahasa scripting.

DHTML dan JavaScript

Scripting  merupakan  jenis  lain  dari  pemrograman,  yang  umumnya  lebih mudah  dipahami.  Script  dapat  disisipkan  ke  dalam  dokumen  HTML  dengan menggunakan  tag  <script>.  Tidak  seperti  style  sheet,  script  bisa  terlihat  di dalam <head> ataupun <body>.

DHTML  (Dynamic  HTML)  merupakan  suatu  teknik  untuk  menciptakan halaman  web  yang interaktif  dengan  cara  mengombinasikan  elemen-elemen seperti HTML, style sheet, dan scripting. Jadi, DHTML bukanlah suatu jenis bahasa  pemrograman  melainkan  hanya  sekadar  istilah  saja.  Pada  bagian  ini, pembuatan DHTML akan dilakukan dengan memanfaatkan JavaScript.

Berikut merupakan tampilan program kalkulator sederhana menggunakan javascript

Untuk Source Codenya:

<html>

<title> program kalkulator sederhana menggunakan textbox </title>

<SCRIPT LANGUAGE=”JavaScript”>

function tambah()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=a+b

form.hasil.value = c

}

function kurang()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=a-b

form.hasil.value=c

}

function kali()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=a*b

form.hasil.value=c

}

function bagi()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=a/b

form.hasil.value = c

}

function bagi()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=a/b

form.hasil.value = c

}

function pangkat()

{

a=eval(form.a.value)

b=eval(form.b.value)

c=Math.pow(a, b)

form.hasil.value = c

}

function kosong()

{

form.a.focus()

form.a.value=””

form.b.value=””

form.hasil.value=””

</SCRIPT>

<body onload=kosong()>

<CENTER>

<font size=”20″> Kalkulator Sederhana</font>

<hr size=”20″ color=”black”>

<FORM name=”form”>

<pre>

Angka 1  <input name=”a”>

Angka 2  <input name=”b”>

Hasil    <input type “text” name=”hasil” disabled=”true”>

</pre>

<hr size=”2″ color=”black”>

<input type=”button” value=”  +  ” onClick=”tambah()”>

<input value=”  –  “>

<input type=”button” value=”  x  ” onClick=”kali()”>

<input type=”button” value=”  /  ” onClick=”bagi()”>

<input type=”button” value=”  ^  ” onClick=”pangkat()”><br>

<input type=”button” value=”            Kosong            ” onClick=”kosong()”>

<br>

<marquee><font color=”green” face=”comic sans ms” size=”3″>Created by : Vina Dwi Puspitasari__Pendidikan Teknik Informatika’07 FT UM</marquee></font><br>

</FORM>

</CENTER>

</body>

</html>

-Selamat Mencoba

Mempercepat Proses Shutdown Pada Windows

shutdownMungkin anda pernah mengalami proses shutdown yang begitu lama pada saat anda ingin mematikan komputer anda. Memang proses shutdown yang memakan waktu begitu lama akan sangat menjengkelkan bagi kita dan terlebih lagi jika kita memang ingin segera mematikan komputer tersebut karena ada pekerjaan yang lain.
Berikut ada beberapa teknik yang bisa digunakan untuk mempercepat proses shutdown windows anda yaitu dengan cara memodifikasi beberapa registry pada windows anda.

1. Digunakan untuk menutup semua aplikasi pada saat shutdown (auto kill ).
– Masuk ke registry editor anda ( Start –> Run –> Ketik regedit )
– Masuk ke registry berikut
HKEY_CURRENT_USER\Control Panel\Desktop
– Cari key dengan nama “AutoEndTasks” dan klik kanan key tersebut lalu pilih Modify, ubah Value Data menjadi 1.

2. Digunakan untuk merubah waktu menutup suatu aplikasi jika ada aplikasi yang Hang.
– Masuk ke registry editor anda ( Start –> Run –> Ketik regedit )
– Masuk ke registry berikut
HKEY_CURRENT_USER\Control Panel\Desktop
– Cari key dengan nama “WaitToKillAppTimeout” dan “HungAppTimeout”.
– Klik kanan masing-masing key tersebut lalu pilih Modify dan ubah Value Data menjadi 1000.

3. Digunakan untuk menonaktifkan fasilitas Clearing Paging File.
Sebelum menggunakan langkah ini anda bisa lihat apa kegunaan paging file disini http://en.wikipedia.org/wiki/Paging_file.
– Masuk ke registry editor anda ( Start –> Run –> Ketik regedit )
– Masuk ke registry berikut
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management
– Cari key dengan nama “ClearPageFileOnShutdown”.
– Klik kanan key tersebut lalu pilih Modify dan ubah Value Data menjadi 0 jika Value Data belum sama dengan 0.

Semoga Bermanfaat

Artikel

Mengenal Error Blue Screen Pada Windows

1. IRQL_NOT_LESS_OR_EQUAL (0X0000000A)
Error ini yang paling sering muncul pada saat terjadi Blue Screen.
Pesan kesalahan ini biasanya disebabkan kerena ada ketidakcocokan driver yang terinstall di komputer.
Penyebabnya:
– Driver yang bentrok atau tidak cocok
– Permasalahan pada Video Card, hal ini mencakup video card yang di overclock melebihi batas atau Anda baru berganti Video card dan Anda belum menguninstall driver Video card lama dari chipset berbeda
– Permasalahan pada Audio Card, meliputi kesalahan konfigurasi atau bug dalam driver sound card

2. NTFS_FILE_SYSTEM atau FAT_FILE_SYSTEM (0X00000024) atau (0X00000023)
Pesan error ini setidaknya sudah sedikit memberikan gambaran di mana kerusakan berada, yaitu ada di partisi atau filesystemnya tetapi bukan di harddisknya.
Kita bisa melakukan pengecekan dengan memeriksa kabel SATA atau PATA atau bisa mengecek partisi dengan tool chkdsk.

3. UNEXPECTED_KERNEL_MODE_TRAP (0X0000007F)
Bila Anda mendapatkan pesan error seperti ini, dapat disebabkan karena:
– Overclock Hardware yang berlebihan
– Komponen komputer yang terlalu panas
– BIOS yang korup
– Memory dan CPU yang cacat

4. DATA_BUS_ERROR
Pesan error ini disebabkan karena adanya kemungkinan bahwa memory atau slot memory di motherboard rusak.

5. PAGE_FAULT_IN_NONPAGED_AREA
Pesan error ini disebabkan karena adanya kerusakan hardware, termasuk memory utama, memory video card, atau memory di processor (L2 Cache)

6. INACCESSIBLE_BOOT_DEVICE
Pesan error ini disebabkan karena adanya kesalahan dalam konfigurasi jumper harddisk yang salah, virus boot sector, driver IDE controller yang salah, atau kesalahan driver chipset.

7. VIDEO_DRIVER_INIT_FAILURE
Pesan error ini disebabkan karena adanya Kesalahan terjadi pada instalasi driver video card yang kurang sempurna, restart pada saat instalasi atau juga dapat terjadi karena kesalahan dalam instalasi driver.

8. BAD_POOL_CALLER
Pesan error ini disebabkan karena adanya Kesalahan ini dapat terjadi karena kesalahan atau driver yang tidak kompatibel. Sering terjadi saat melakukan instalasi XP dari upgrade, atau bukan dari instalasi baru.

9. PEN_LIST_CORRUPT
Pesan error ini disebabkan karena adanya kerusakan RAM

10. MACHINE_CHECK_EXCEPTION
Pesan error ini disebabkan oleh cacatnya CPU, atau yang di overclock secara agresif, serta power supply yang kekurangan daya atau rusak.

PENGENALAN ROBOTIK SEBAGAI APLIKASI PERKEMBANGAN AI (Artificial Intelegence.)

Hubungan antara AI (Artificial Intelegence. ) dengan robotika.

Kecerdasan Buatan (bahasa Inggris: Artificial Intelligence atau AI), Jika diartikan tiap kata, artificial artinya buatan, sedangkan intelligence adalah kata sifat yang berarti cerdas, sehingga Artificial Intelligence didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. (Wikipedia. 2008)

Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.

Berbicara tentang robot tidak lepas dengan yang disebut AI atau Artificial Intelegence., AI adalah kemampuan berpikir yang dibuat sendiri oleh manusia untuk diletakan pada sebuah benda elektronik. Yang paling banyak menerapkan AI adalah dunia robotika. Sehingga rasanya tidak lengkap bila membicarakan robot tanpa membicarakan AI.

AI bukanlah sebuah perangkat tambahan pada robot. Bentuknya lebih menyerupai program yang sangat kompleks yang terdapat dalam system kendali sebuah robot. Kecerdasan Buatan (Artificial Intelligence) dalam robotik adalah suatu algorithma (yang dipandang) cerdas yang diprogramkan ke dalam kontroler robot.

Dengan adanya AI, maka sebuah robot dapat berpikir menyerupai manusia normal. Meskipun kesempurnaannya belum dapat sepenuhnya menyerupai manusia.

Dalam tubuh manusia terdapat ribuan urat saraf yang terhubung dalam pusat otak. Sehingga manusia tidak hanya memiliki kemampuan mengindera, mengingat, dan mengambil keputusan. Namun, kemampuan hidup manusia juga dapat berkembang dengan pesat dengan adanya ribuan saraf dalam otak ini. AI mencoba untuk memahami ini semua. Namun, tentu bukanlah hal yang mudah. Masih butuh waktu yang sangat panjang.

Beberapa kemampuan sudah dicoba untuk diterapkan. Misalnya kemampuan mengingat sesuatu yang membuat robot selalu dilengkapi dengan HDD seperti layaknya komputer dan mengakses data secara otomatis. Kemampuan mengindera dengan menggunakan sekian banyak sensor untuk dapat mengenali lingkungan sekitar, termasuk dari dalam diri robot itu sendiri. Kemudian yang terakhir yang agak sulit yaitu menerapkan kemampuan mengambil keputusan.

Parameter berpikir yang sangat luas yang dimiliki oleh manusia membuat ilmuwan agak kerepotan dalam menentukan kemungkinan-kemungkinan yang dapat dihitung oleh sebuah robot. Meskipun bukan berarti tidak mungkin.

Untuk kebutuhan yang sangat spesifik, pengambilan keputusan yang dilakukan oleh sebuah robot yang dilengkapi AI dapat saja lebih baik dari manusia awam. Seperti komputer catur yang melawan atlit catur dunia beberapa tahun lalu. Komputer tersebut dapat menentukan jalan yang belum tentu dapat dilakukan atau terpikirkan oleh manusia biasa.

Perkembangan teknologi yang memungkinkan sebuah komputer dapat dengan lancar berkomunikasi dengan manusia telah berkembang sangat jauh. Meskipun tidak sehebat perkembangan motorik yang dapat dilakukan oleh robot. Namun setidaknya, mengalami perkembangan yang sangat positif. Misalnya saja, saat ini bila Anda membeli sebuah robot Aibo keluaran Sony. Maka Anda dapat memberikan 100 lebih macam perintah pada anjing elektrik tersebut dengan suara Anda. Meskipun kemungkinan si anjing pintar tersebut menuruti perintah Anda sangat tipis. Tapi, ia dapat mengerti apa yang Anda katakan.
Lain Aibo lain pula dengan Asimo, robot berbentuk menyerupai astronot buatan Honda. Robot yang merupakan kepanjangan dari Advanced Step in Innovative Mobility ini memiliki kemampuan kominikasi yanglebih canggih. Ia tidak hanya dapat bereaksi ketika namanya dipanggil, namun ia juga dapat mengerti jenis suara lain selain suara manusia, serta bereaksi terhadapnya. Misalnya ketika mendengar ada sesuatu yang jatuh atau tertabrak ia tidak hanya dapat mengerti apa yang sedang terjadi, namun dapat langsung bereaksi dengan menengok ke arah suara tersebut.Kemampuan komunikasi tersebut sering disebut juga dengan sebutan danya Artificial Intelegent (kecerdasan buatan)