Professional Documents
Culture Documents
Nilluh A. P. P. D. A. P.
NRP. 7203 030 052
Dosen Pembimbing:
Riyanto Sigit, ST,M.Kom
NIP. 132 134 726
Amang Sudarsono , ST
NIP. 132 300 371
JURUSAN TELEKOMUNIKASI
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
SURABAYA 2006
Proyek Akhir 2005/2006
Mengetahui
Ketua Jurusan Teknik Telekomunikasi
ii EEPIS-ITS
Proyek Akhir 2005/2006
ABSTRAK
iii EEPIS-ITS
Proyek Akhir 2005/2006
ABSTRACT
iv EEPIS-ITS
Proyek Akhir 2005/2006
KATA PENGANTAR
Penyusun
v EEPIS-ITS
Proyek Akhir 2005/2006
vi EEPIS-ITS
Proyek Akhir 2005/2006
DAFTAR ISI
Lembar Judul ............................................................................ i
Lembar Penguji .......................................................................... ii
Abstrak ...................................................................................... iii
Abstrack .................................................................................... iv
Kata Pengantar .......................................................................... v
Ucapan Terima Kasih ................................................................ vi
Daftar Isi .................................................................................... vii
Daftar Gambar ........................................................................... ix
Daftar Tabel ............................................................................... x
vii EEPIS-ITS
Proyek Akhir 2005/2006
viii EEPIS-ITS
Proyek Akhir 2005/2006
DAFTAR GAMBAR
ix EEPIS-ITS
Proyek Akhir 2005/2006
DAFTAR TABEL
x EEPIS-ITS
1
Proyek Akhir 2005/2006
BAB 1
PENDAHULUAN
1.1 LATAR BELAKANG
1.2 TUJUAN
Masalah yang akan ditangani dari Tugas Akhir ini perancangan dan
pembuatan robot berkamera dengan sistem pengontrolan robot melalui
wireless internet, sehingga bisa diakses di Internet dan mobile phone.
EEPIS-ITS
2
Proyek Akhir 2005/2006
1.5 METODOLOGI
EEPIS-ITS
3
Proyek Akhir 2005/2006
Buku laporan proyek akhir ini terdiri dari 5 (lima) bab, dimana
masing-masing bab mempunyai kaitan satu sama lain, yaitu:
BAB I PENDAHULUAN
Memberikan latar belakang tentang permasalahan,
tujuan, masalah dan batasan masalah yang dibahas
dalam proyek akhir ini.
EEPIS-ITS
4
Proyek Akhir 2005/2006
BAB V PENUTUP
Berisi kesimpulan dan saran serta rencana
pengembangan proyek akhir, jika dimungkinkan untuk
masa yang akan datang
DAFTAR PUSTAKA
Pada bagian ini berisi tentang referensi – referensi yang
telah dipakai oleh penulis sebagai acuan dan penunjang
serta parameter yang mendukung penyelesaian proyek
akhir ini baik secara praktis maupun sebagai teoritis.
EEPIS-ITS
5
Proyek Akhir 2005/2006
B A B II
TEORI DASAR
Kata "Linux" untuk saat ini sudah tidak asing lagi bagi para
pengguna internet dan komunitas mahasiswa yang memiliki hobi
untuk mencoba software-software baru. Secara teknis dan singkat
dapat dikatakan, Linux adalah suatu system operasi yang bersifat
multi user dan multi tasking, yang dapat berjalan di berbagai platform
termasuk prosesor Intel 386 maupun yang lebih tinggi. Linux dapat
berinteroperasi secara baik dengan sistem operasi yang lain, termasuk
Apple, Microsoft dan Novell. Nama Linux sendiri diturunkan dari
pencipta awalnya, Linus Torvalds, yang sebetulnya mengacu pada
suatu kumpulan software lengkap yang bersama-sama dengan kernel
menyusun suatu sistem operasi yang lengkap. Lingkungan sistem
operasi ini mencakup ratusan program, termasuk kompiler, interpreter,
editor dan utilitas. Perangkat bantu yang mendukung konektifitas,
ethernet, SLIP dan PPP dan interoperabilitas. Produk perangkat lunak
yang handal (reliable), termasuk versi pengembangan terakhir.
Kelompok pengembang yang tersebar di seluruh dunia yang telah
bekerja dan menjadikan Linux portabel ke suatu platform baru, begitu
juga mendukung komunitas pengguna yang memiliki beragam
kebutuhan dan juga pengguna dapat turut serta bertindak sebagai tim
pengembang sendiri.
EEPIS-ITS
6
Proyek Akhir 2005/2006
EEPIS-ITS
7
Proyek Akhir 2005/2006
● Kelebihan Linux
Di sini akan dijelaskan beberapa kelebihan dari sistem
operasi Linux/UNIX dibandingkan dengan dengan sistem
operasi yang lain. Dan berikut ini adalah beberapa fakta dari
hal-hal yang menguntungkan dengan menggunakan program
dan file-file Linux/UNIX :
1. Pada dasarnya semua data tersimpan di dalam harddisk
walau ada beberapa kondisi dimana data tersimpan di
disket. Linux/UNIX memberikan beberapa proses
spesial dimana terminal, printer dan device hardware
lainnya dapat diakses seperti kita mengakses file yang
tersimpan dalam harddisk atau disket.
2. Ketika program dijalankan, program tersebut dijalankan
dari harddisk ke dalam RAM dan setelah dijalankan
akan dinamakan sebagai proses.
3. Linux/UNIX menyediakan servis untuk membuat,
memodifikasi program, proses dan file.
4. Linux/UNIX mendukung struktur file yang bersifat
hirarki.
5. Linux/UNIX adalah salah satu sistem operasi yang
termasuk ke dalam kelas sistem operasi yang dapat
melakukan multitasking. Multitasking sendiri adalah
keadaan dimana suatu sistem operasi dapat melakukan
banyak kerjaan pada saat yang bersamaan.
6. Selain multitasking, Linux/UNIX juga dapat
mendukung multiuser. Yaitu sistem operasi yang pada
saat bersamaan dapat digunakan oleh lebih dari satu
user yang masuk ke dalam sistem. Bahkan untuk Linux
juga mendukung untuk multiconsole dimana pada saat
bersamaan di depan komputer langsung tanpa harus
melalui jaringan dan memungkinkan lebih dari satu
user masuk ke dakam sistem.
EEPIS-ITS
8
Proyek Akhir 2005/2006
EEPIS-ITS
9
Proyek Akhir 2005/2006
2.3 TCP/IP
TCP/IP merupakan protokol jaringan komputer terbuka dan bisa
terhubung dengan berbagai jenis perangkat keras dan lunak. TCP terdiri
beberapa layer atau lapisan yang memiliki fungsi tertentu dalam
komunikasi data. Setiap fungsi dari layer selain dapat bekerjasama
dengan layer pada tingkat lebih rendah atau lebih tinggi, juga bisa
EEPIS-ITS
10
Proyek Akhir 2005/2006
EEPIS-ITS
11
Proyek Akhir 2005/2006
EEPIS-ITS
12
Proyek Akhir 2005/2006
EEPIS-ITS
13
Proyek Akhir 2005/2006
EEPIS-ITS
14
Proyek Akhir 2005/2006
EEPIS-ITS
15
Proyek Akhir 2005/2006
EEPIS-ITS
16
Proyek Akhir 2005/2006
EEPIS-ITS
17
Proyek Akhir 2005/2006
EEPIS-ITS
18
Proyek Akhir 2005/2006
3. Fleksibel
Browser web tersedia untuk hampir semua macam platform
mesin dan sistem operasi, baik itu mesin Windows berbasis
prosesor Intel, mesin UNIX berbasis prosesor RISC, ataupun
komputer Macintosh. Fleksibilitas aplikasi web lebih terjamin,
karena tidak perlu lagi mengembangkan program-program client
yang berbeda untuk tiap macam platform.
EEPIS-ITS
19
Proyek Akhir 2005/2006
EEPIS-ITS
20
Proyek Akhir 2005/2006
2.7 HTTP
EEPIS-ITS
21
Proyek Akhir 2005/2006
sendiri bisa mengacu kepada dokumen web., server FTP (File Trasfer
Protokol), e-mail ataupun layanan – layanan lain.
Server dan browser web berkomunikasi satu sama lain dengan
protokol yang memang dibuat khusus untuk ini, yaitu HTTP. HTTP
bertugas menangani permintaan –permintaan ( request ) dari browser
untuk mengambil dokumen –dokumen web.
HTTP bisa dianggap sebagai sistem yang bermodel client-server.
Browser web, sebagai clientnya, mengirimkan permintaan kepada
server web untuk menentukan apakah dokumen yang diminta bisa
dikirimkan kepada browser atau tidak.
HTTP bekerja di atas TCP ( Transmission Control Protocol )
yang menjamin sampainya data di tujuan dalam urutan yang benar. Bila
suatu kesalahan terjadi selam proses pengiriman, pihak pengirim akan
mendapat pemberitahuan bahwa telah terjadi ketidakberesan. Karenanya
server dan client tidak harus menyediakan mekanisme untuk memeriksa
kesalahan transmisi data, yang berarti mempermudah pekerjaan
pemrograman. Namun demikian, HTTP tidak memiliki apa yang disebut
session, seperti halnya FTP, yang menjaga hubungan antara server dan
client secara konsisten. Setiap halaman web yang dikirim akan
melibatkan satu proses penyambungan antara client dan server, baru
kemudian datanya ditransfer. Setelah data selesai ditransfer, koneksi
antara server dan client akan diputus. Sifatnya ini membuat HTTP
sering disebut dengan istilah protokol hit-and-run.
Suatu halaman web seringkali berisi bebrapa file gambar, atau
beberapa file–file lain. HTTP memaksa server untuk menjalin hubungan
baru setiap kali hendak mengirim satu buah file. Ini tidak
menguntungkan dan tidak efisien, mengingat proses hubung-putus-
hubung semacam ini menyebabkan beban bagi jaringan.
Standar baru protokol HTTP, yaitu HTTP/1.1 yang baru-baru ini
diperkenalkan, dira ncang untuk mengatasi masalah di atas. Web
diarahkan agar mengarah ke pengguna persistent connection
(sambungan yang terjaga berkesinambungan ) secara lebih efisien.
Dalam HTTP/1.1, server tidak akan memutuskan hubungan dengan
client pada akhir pentransferan dokumen. Hubungan tetap terbuka untuk
melayani bila saja ada request lagi dalam waktu yang singkat. Hubungan
baru akan diputuskan bila setelah melewati suatu batas waktu tertentu
EEPIS-ITS
22
Proyek Akhir 2005/2006
2.8 HTML
HTML dewasa ini dikenalkan sebagai bahasa standar untuk
membuat membuat dokumen web. Sesungguhnya Hypertext Markup
Language (HTML) justru tidak dibuat untuk mempublikasikan informasi
di web, namun oleh karena kesederhanaan serta kemudahan
penggunanya, HTML kemudian dipilih orang untuk mendistribusikan
informasi di web.
Perintah – perintah HTML diletakkan dalam file berektensi
*.html dan ditandai dengan mempergunakan tag (tanpa) berupa karakter
“<”dan “>”. Tidak seperti bahasa pemrograman berstruktur prosedural
seperti Pascal atau C, HTML tidak mengenal jumping ataupun looping.
Kode – kode HTML dibaca oleh browser dari atas ke bawah tan[a
adanya lompatan – lompatan.
Struktur sebuah dokumen HTML pada dasarnya dibagi menjadi
dua bagian besar, yaitu header dan body. Masing –masing ditandai oleh
pasangan container tag <head> dan <body>. Bagian head berisikan
judul dokumen dan informasi – informasi dasar lainnya, sedangkan
bagian body adalah kata dokumennya.Pengaturan format texts dan
pembentukan link dilakukan terhadap obyeknya langsung dengan
ditandai oleh tag-tag HTML.
HTML diatur oleh Konsorsium WWW (W3C). Semua perubahan
atas standar bahasa HTML harus disahkan terlebih dahulu oleh
konsursium ini. Sejauh ini, HTML telah mengalami berbagai revisi
EEPIS-ITS
23
Proyek Akhir 2005/2006
EEPIS-ITS
24
Proyek Akhir 2005/2006
2.10 JAVASCRIPT
Javascript diperkenalkan pertama kali oleh Netscape pada tahun
1995. Pada awalnya bahasa ini dinamakan “LiveScript” yang
berfungsi sebagai bahasa sederhana untuk browser Netscape
Navigator 2. Pada masa itu bahasa ini banyak di kritik karena kurang
aman, pengembangannya yang terkesan buru buru dan tidak ada pesan
kesalahan yang di tampilkan setiap kali kita membuat kesalahan pada
saat menyusun suatu program. Kemudian sejalan dengan sedang giatnya
kerjasama antara Netscape dan Sun (pengembang bahasa
pemrograman “Java” ) pada masa itu, maka Netscape memberikan
nama “JavaScript” kepada bahasa tersebut pada tanggal 4 desember
1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk
mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di
browser Internet Explorer 3.
Javascript adalah bahasa yang berbentuk kumpulan skrip yang
pada fungsinya berjalan pada suatu dokumen HTML, sepanjang sejarah
internet bahasa ini adalah bahasa skrip pertama untuk web. Bahasa ini
adalah bahasa pemrograman untuk memberikan kemampuan tambahan
terhadap bahasa HTML dengan mengijinkan pengeksekusian perintah
perintah di sisi user, yang artinya di sisi browser bukan di sisi server
web. Javascript bergantung kepada browser(navigator) yang
memanggil halaman web yang berisi skrip skrip dari Javascript dan
tentu saja terselip di dalam dokumen HTML. Javascript juga tidak
memerlukan kompilator atau penterjemah khusus untuk
menjalankannya (pada kenyataannya kompilator Javascript sendiri
sudah termasuk di dalam browser tersebut). Lain halnya dengan bahasa
“Java” (dengan mana JavaScript selalu di banding bandingkan) yang
memerlukan kompilator khusus untuk menterjemahkannya di sisi
user/klien.
EEPIS-ITS
25
Proyek Akhir 2005/2006
EEPIS-ITS
26
Proyek Akhir 2005/2006
2.12 PEMROGRAMAN C
Bahasa C bisa disebut bahasa pemograman tingkat menengah
(middle level programming language ). Arti tingkat (level) disini adalah
kemampuan mengakses fungsi-fungsi dan perintah-perintah dasar
bahasa mesin/hardware (machine basic instruction set). Dalam
perspektif mudahnya dipahami manusia, C bisa digolongkan dalam
bahasa tingkat tinggi, namun C juga menyediakan kemampuan yang ada
pada bahasa tingkat rendah, misalnya operasi bit, operasi byte,
pengaksesan memori, dsb.Beberapa alasan mengapa memakai bahasa C
adalah terangkum dibawah.
¾ C adalah bahasa pemograman yang paling popular saat ini
¾ C adalah bahasa pemograman yang memiliki portabilitas tinggi
¾ C adalah bahasa pemograman dengan kata kunci (keyword) sedikit
C hanya menyediakan 32 kata kunci seperti terangkum dibawah:
EEPIS-ITS
27
Proyek Akhir 2005/2006
EEPIS-ITS
28
Proyek Akhir 2005/2006
EEPIS-ITS
29
Proyek Akhir 2005/2006
Handler (pengendali)
Handler adalah sebuah mekanisme yang mengendalikan
beragam request pada Web berdasarkan nama file. File-file tertentu (.jsp,
.asp, dll) memerlukan kendali program tertentu pula (Java, ASP, dll).
Sudah sejak sebelum kemunculan Apache 1.1, Web server sudah
memiliki kemampuan untuk menentukan secara tepat kendali program
yang dipakai untuk seuatu file berdasarkan namanya, daripada
bergantung pada default-default yang memiliki kode-kode yang sulit
dipecahkan. Akibatnya developer memetakan suatu handler pada nama
file yang tidak standar.
Handler-handler yang bersifat built-in terdiri dari handler default yang
mengendalikan isi data statis, khususnya HTML. Tetapi, tersedia juga
tambahannya, yaitu mod_asis, mod_cgi, mod_imap, mod_info,
mod_status, dan mod_negotiation. Selain ini bisa juga
ditambahkan manual dengan perintah Action, yaitu perintah pada Web
server untuk mengendalikan request tertentu dengan sebuah file CGI
khusus. Misal, untuk semua fileberekstensi.stu dikendalikan oleh script
Perl. Perintah berikut ini dapat ditambahakan pada file httpd.conf
Apache:
AddHandler my-file-type .stu
Action my-file-type /cgi-bin/stu.pl
EEPIS-ITS
30
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
BAB III
PERENCANAAN DAN PEMBUATAN
PERANGKAT LUNAK
3.1 PENDAHULUAN
Pada pembuatan ”Monitoring Ruangan dengan Robot Berkamera
yang dikontrol melalui Wireless LAN” untuk proyek akhir ini kami
secara umum terbagi menjadi dua bagian pokok, yaitu pembuatan robot
interfacing dan network controlling.
Pada bab ini akan dibahas mengenai perencanaan dan pembuatan
perangkat keras (hardware) dan perangkat lunak (software) dari sistem
yang akan dibuat. Untuk pembuatan perangkat keras meliputi perangkat
mekanik serta perangkat keras elektronikakan dibahas pada bab ini.
Pembuatan perangkat mekanik terdiri dari desain mengenai konstruksi
robot itu sendiri yaitu pembuatan kerangka robot yang menggunakan
aluminium yaitu pembuatan tubuh robot, penyangga laptop, penyangga
webcam, penyangga motor DC, penyangga motor DC, penyangga roda
kemudian merangkai bagian-bagian tersebut menjadi satu kesatuan yang
utuh, rapi dan bergerak sesuai dengan hasil yang diharapkan. Sedangkan
pembuatan perangkat keras elektronik terdiri dari pembuatan rangkaian
power supply, kabel parallel, dan rangkaian driver motor DC dan motor
stepper. Pembuatan perangkat lunak untuk menggerakkan robot ini
dirancang dengan menggunakan bahasa pemrograman gcc.
Konsep dasar dari perencanaan proyek akhir ini adalah mengontrol
sistem keamanan suatu ruangan yang dapat dikendalikan dari jarak jauh
melalui wireless LAN.
Dalam pembuatan suatu sistem maka yang pertama kali dilakukan
adalah dengan mengetahui permasalahannya. Tahap tersebut sudah
dibahas dalam BAB sebelumnya. Tahap selanjutnya adalah mengetahui
konfigurasi sistem secara keseluruhan.
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
# /etc/init.d/apache restart
EEPIS-ITS
Proyek Akhir 2005/2006
# vim info.php
<?php
phpinfo();
?>
3. Test PHP4 dengan memanggil file info.php dari browser. Bila php4
berjalan maka, akan keluar tampilan seperti dibawah ini
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
Maka file c yang telah dicompile akan dijalankan, atau sama saja
dengan kita mengetikkan perintah:
EEPIS-ITS
Proyek Akhir 2005/2006
Dari pengujian ini dapat dilihat bahwa efek yang terjadi sesuai
dengan perencanaan. Selain itu, dengan pengujian ini tampak juga
bahwa file c yang berfungsi mengakses paralel port untuk mengirimkan
perintah kontrol robot dapat diakses melalui file cgi yang merupakan
penghubung file c dan php.
EEPIS-ITS
Proyek Akhir 2005/2006
Jika username dan password benar akan ada pesan selamat datang,
tetapi bila salah akan ada pesan peringatan.
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
Pada halaman view capture kita bisa melihat gambar yang disimpan
oleh aplikasi motion pada halaman video capture. Gambar-gambar yang
ada dapat diperbesar dan dilihat file infonya dengan melakukan klik
pada gambar tersebut.
Dari pengujian dapat dilihat bahwa web ini punya navigasi yng
cukup baik. Pengunjung yang tidak memiliki username dan password
bisa tetap melihat gambar hasil capture webcam tetapi tidak bisa
mengakses kontrol robot.
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
60000
50000
Bandwidth
40000
Input(B/s)
30000
Output(B/s)
20000
10000
0
5
05
15
25
35
45
55
:2
:3
:4
:5
0:
0:
0:
0:
0:
0:
23
23
23
23
Waktu
EEPIS-ITS
Proyek Akhir 2005/2006
60000
50000
Bandwidth
40000
Input(B/s)
30000
Output(B/s)
20000
10000
0
05
15
25
35
45
55
5
5
:2
:3
:4
:5
0:
0:
0:
0:
0:
0:
23
23
23
23
Waktu
EEPIS-ITS
Proyek Akhir 2005/2006
25000
20000
Bandwidth
15000
Input(B/s)
10000
Output(B/s)
5000
0
25
35
45
55
05
15
25
35
45
55
1:
1:
1:
1:
2:
2:
2:
2:
2:
2:
Waktu
EEPIS-ITS
Proyek Akhir 2005/2006
25000
20000
Bandwidth
15000 Input(B/s)
10000 Output(B/s)
5000
0
25
35
45
55
05
15
25
35
45
55
1:
1:
1:
1:
2:
2:
2:
2:
2:
2:
Waktu
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
BAB V
PENUTUP
5.1 KESIMPULAN
EEPIS-ITS
Proyek Akhir 2005/2006
5.2 SARAN
Untuk mendapatkan performa yang lebih baik dari sistem ini
dapat digunakan prosesor komputer yang yang lebih cepat untuk
mengolah data secara lebih real time. Kamera yang digunakan sebaiknya
tidak mudah terpengaruh terhadap intensitas cahaya sehingga gambar
yang didapat akan lebih bagus. Pengontrolan pergerakan kamera dapat
dikembangkan sehingga tidak hanya dua arah yaitu naik dan turun saja
tetapi juga bisa dikontrol untuk gerakan putar ke kiri maupun ke kanan.
Monitoring ruangan ini dapat dikembangkan dalam bidang
robotika. Dimana robot tidak hanya bisa bergerak dan membawa kamera
saja akan tetapi bisa ditambahkan aplikasi robotik lain seperti robot
penyapu lantai, robot pengantar minuman yang dapat dikontrol dari
jarak jauh. Selain itu aplikasi ini dapat pula dikembangkan agar bisa
diakses melalui mobile phone.
EEPIS-ITS
Proyek Akhir 2005/2006
DAFTAR PUSTAKA
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
LAMPIRAN
// Koneksi ke Database
$mysql= mysql_connect (DB_HOST,DB_USER,DB_PASS)
or die("Sorry nich...nggak konek ama
databasenya, coba cek lagi ya..\n");
// Pilih Database
mysql_select_db(DB_NAME);
//Fungsi-fungsi
//Untuk menampilkan komentar atau pesan (baik
pesan error maupun berhasil)
function message($msg) {
echo "<SCRIPT
LANGUAGE=\"javascript\">alert(\"$msg\")</S
CRIPT>";
exit;
}
//Sama dengan fungsi di atas hanya saja setelah
pesan ditampilkan langsung di redrect ke url
tertentu
function message_url($msg,$url) {
echo
"<SCRIPT>alert(\"$msg\");self.location.href='$ur
l'</SCRIPT>";
exit;
}
//Sama dengan fungsi di atas hanya saja setelah
pesan ditampilkan langsung kembali ke url semula
EEPIS-ITS
Proyek Akhir 2005/2006
function message_back($msg) {
echo "<SCRIPT>alert(\"$msg\");history.go(-
1)</SCRIPT>";
exit;
}
function emptyString($s) {
if (!isset($s)) return true;
else if (is_array($s)) {
if(empty($s)) return true; else
return false;
}
else if (!is_string($s))
die('emptyString() : Argument passed was not a
string.');
else if ($s=='') return true;
else return false;
}
function makeQueryString($ar) {
if (empty($ar)) return '';
$x=array();
reset($ar);
while (list($a, $b)=each($ar))
$x[]=urlencode($a).'='.urlencode($b);
return '?'.join('&',$x);
}
function formatLink($link,
$format='%link:title', $title='',
$htmlsafe=false) {
if (emptyString($title)) $title=$link;
if ($htmlsafe) $h_title=$title;
else $h_title=htmlspecialchars($title);
$h_link=htmlspecialchars($link);
$isMail=!is_bool(strstr($link, '@'));
// http
if (substr($link,0,4)=='www.')
$link='http://'.$link;
$isHttp=strcasecmp(substr($link,0,4),
'http')==0;
EEPIS-ITS
Proyek Akhir 2005/2006
$isICQ=((string)(int)$link)==$link;
$format=str_replace('%title%', $h_title,
$format);
$format=str_replace('%link%',
emptyString($link) ? $h_title : $h_link,
$format);
$format=str_replace('%link:link%',
emptyString($link) ? $h_title : '<a
href="'.$link.'">.'.$h_link.'</a>', $format);
$format=str_replace('%link:title%',
emptyString($link) ? $h_title : '<a
href="'.$link.'">.'.$h_title.'</a>', $format);
if ($isMail) {
$format=str_replace('%mail:link%',
emptyString($link) ? $h_title : '<a
href="mailto:'.$link.'">'.$h_link.'</a>',
$format);
$format=str_replace('%mail:link%',
emptyString($link) ? "<$h_title>" : '<<a
href="mailto:'.$link.'">'.$h_title.'</a>',$forma
t);
} else {
$format=str_replace('%mail:link%',
emptyString($link) ? $h_title : $h_link,
$format);
$format=str_replace('%<mail:link>%',
emptyString($link) ? "<$h_title>" :
'<'.$h_link.'>', $format);
$format=str_replace('%mail:title%',
$h_title, $format);
}
if ($isHttp) {
$format=str_replace('%http:link%',
emptyString($link) ? $h_title : '<a
href="'.$link.'">'.$h_link.'</a>', $format);
$format=str_replace('%http:title%',
emptyString($link) ? $h_title : '<a
href="'.$link.'">'.$h_title.'</a>', $format);
EEPIS-ITS
Proyek Akhir 2005/2006
} else {
$format=str_replace('%http:link%',
emptyString($link) ? $h_title : $h_link,
$format);
$format=str_replace('%http:title%',
$h_title, $format);
}
if ($isICQ) {
$format=str_replace('%icq:link%',
emptyString($link) ? $h_title : '<a
href="http://wwp.icq.com/'.$link.'">'.$h_link.'<
/a>', $format);
$format=str_replace('%icq:title%',
emptyString($link) ? $h_title : '<a
href="http://wwp.icq.com/'.$link.'">'.$h_title.'
</a>', $format);
} else {
$format=str_replace('%icq:link%',
emptyString($link) ? $h_title : $h_link,
$format);
$format=str_replace('%icq:title%',
$h_title, $format);
}
return $format;
}
function formatNumber($s, $decimal=0) {
return number_format($s, $decimal, ',',
'.');
}
?>
Header.php
<?
session_start();
require_once "inc.php";
$ip = "robot-wireless.eepis-its.edu";
?>
<html>
EEPIS-ITS
Proyek Akhir 2005/2006
<head>
<title>.:Robotic Camera >></title>
<script language="JavaScript"
type="text/JavaScript">
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr;
for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)
x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document;
if(d.images){
if(!d.MM_p) d.MM_p=new Array();
var
i,j=d.MM_p.length,a=MM_preloadImages.arguments;
for(i=0; i<a.length; i++)
if(a[i].indexOf("#")!=0){
d.MM_p[j]=new Image;
d.MM_p[j++].src=a[i];
}
}
}
function MM_findObj(n, d) { //v4.01
var p,i,x;
if(!d) d=document;
if((p=n.indexOf("?"))>0&&parent.frames.lengt
h) {
d=parent.frames[n.substring(p+1)].document;
n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for
(i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++)
x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById)
x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
EEPIS-ITS
Proyek Akhir 2005/2006
var i,j=0,x,a=MM_swapImage.arguments;
document.MM_sr=new Array; for(i=0;i<(a.length-
2);i+=3)
if
((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]
=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<style type="text/css">
<!--
.kiri{
background-image: url(gambar/kiri.jpg);
background-repeat: repeat-y;
}
.kanan{
background-image: url(gambar/kiri.jpg);
background-repeat: repeat-y;
width: 40px;
}
.tekssatu{
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 11px;
color: #FFFFFF;
}
.teksdua{
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 11px;
color: #000000;
}
.tekstiga{
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 10px;
color: #000000;
}
EEPIS-ITS
Proyek Akhir 2005/2006
.tengah{
background-image: url(gambar/tmp_12bg.gif);
background-repeat: repeat-y;
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 10px;
color: #FFFFFF;
}
a:link,a:active,a:visited{
color : #FF6600;
twxt-decoration: none;
}
a:hover {
text-decoration: underline; color : #FF0000;
}
.mainmenu{
font-weight: bold;
font-size: 12px;
color : #006699;
text-decoration:none;
}
a.mainmenu { text-decoration;none; color :
#DD6699; }
a.mainmenu:hover{ text-decoration: underline;
color : #DD6900 }
input,textarea,select {
color : #000000;
font: normal 11px Verdana, Arial, Helvetica,
sans-serif;
border: 1px #000000;
}
/* The text input fields background colour */
input.post, textarea.post, select {
background-color : #FFFFFF;
}
EEPIS-ITS
Proyek Akhir 2005/2006
input.button {
background-color : #EFEFEF;
color: #000000;
font-size: 11px;
font-family: Verdana, Arial, Helvetica,
sans-serif;
border-weight : bold;
}
/* The main submit button option */
input.mainoption {
background-color : #FAFAFA;
font-weight : bold;
}
input.maindua {
background-color : #FAFAFA;
font-weight : bold;
border: 1px solid #000000;
}
.garis {
border: 1px solid #000000
}
.judul {
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 13px;
font-weight: bold;
color : #FF6600;
text-decoration:none;
}
tr.header {
font-weight : bold;
border: solid #000000;
height: 20px;
background-color : #A6D2FF;
font-family: Verdana, Arial, Helvetica,
sans-serif;
font-size: 13px;
color : #FF6600;
EEPIS-ITS
Proyek Akhir 2005/2006
text-decoration:none;
}
--!>
</style>
</head>
<body background = "gambar/background.gif"
onLoad =
"MM_preloadImages('pic_but/2_1.gif','pic_but/4_1
.gif','pic_but/5_1.gif','pic_but/6_1.gif','pic_b
ut/8_1.gif','pic_but/11_1.gif','pic_but/12_1.gif
')">
<table width="646" border="0" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0"
cellspacing="0" cellpadding="0">
<tr>
<td width="297"><img
src="gambar/Wireless.jpg" width="297"
height="51"></td>
<td class="tengah" width="100%"><marquee
direction="left" scrolldelay="200"><h4>Welcome
to Robotic Camera by Video Streaming, GCC, CGI
and PHP</h4></marquee></td>
<td width="40" align="right"><h2><font
color="#FF0000">Robotic Camera</font></h2></td>
</tr>
</table></td>
</tr>
<tr>
<td width="100%"><table width="100%"
border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="kiri" width="122" valign="top"
height="100%">
<table width="100%" border="0"
cellspacing="0" cellpadding="0">
<tr>
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
</table></td>
<td width="484" align="center" valign="top"
bgcolor="#EEEDFF">
<?
if (emptyString($_COOKIE[id])) {
?>
<table width="100%" border="0"
cellspacing="0" cellpadding="0">
<tr align="center">
<td width="20%"><img
src="gambar/1.jpg" width="60"></td>
<td width="20%"><img
src="gambar/1.jpg" width="60"></td>
<td width="20%"><img
src="gambar/1.jpg" width="60"></td>
<td width="20%"><img
src="gambar/1.jpg" width="60"></td>
<td width="20%"><img
src="gambar/1.jpg" width="60"></td>
</tr>
<tr align="center" class="teksdua">
<td>Open Streaming</td>
<td>Video Capture</td>
<td>View Capture</td>
<td>View Traffic</td>
<td>Help</td>
</tr>
</table> <? } else { ?>
<table width="100%" border="0"
cellspacing="0" cellpadding="0">
<tr align="center">
<td width="20%"><a href="/cgi-
bin/open.cgi"><img src="gambar/1.jpg" width="60"
border="0"></a></td>
<td width="20%"><a href="/cgi-
bin/video.cgi"><img src="gambar/1.jpg"
width="60" border="0"></a></td>
EEPIS-ITS
Proyek Akhir 2005/2006
<td width="20%"><a
href="viewpict.php"><img src="gambar/b_view.png"
width="60" border="0"></a></td>
<td width="20%"><a
href="viewtrafik.php"><img src="gambar/1.jpg"
width="60" border="0"></a></td>
<td width="20%"><a
href="help.php"><img src="gambar/b_docs.png"
width="60" border="0"></a></td>
</tr>
<tr align="center" class="teksdua">
<td><a href="open.php">Open
Streaming</a></td>
<td><a href="video.php">Video
Capture</a></td>
<td><a href="viewpict.php">View
Capture</a></td>
<td><a href="viewtrafik">View
Traffic</a></td>
<td><a href="help.php">Help</a></td>
</tr>
</table> <? } ?>
Footer.php
</td>
<td width="60" align="left"
class="kanan">hallo semua</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0"
cellspacing="0"
cellpadding="0">
<tr>
EEPIS-ITS
Proyek Akhir 2005/2006
<td width="122"><img
src="gambar/aercam.jpg" width="122"
height="44"></td>
<td valign="top" class="teksdua"
align="center">»2005<br>by Nilluh
A.P.P.D.A.P</td>
<td width="55" align="right"><img
src="gambar/atv.jpg" width="55"></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Index.php
<?
include "header.php";
?>
<img src="http://<?echo $ip;?>:8003" width="400"
height="300">
<?
/*script di atas digunakan oleh user biasa untuk
menampilkan video streaming*/
include "footer.php";
?>
Login.php
<?
require_once "inc.php";
switch($mod){
case "logout":
{
/*session_unregister($SESSION[usrnm]);
$_SESSION[usrnm]="";
unset($_SESSION[usrnm]);
EEPIS-ITS
Proyek Akhir 2005/2006
session_unregister($_SESSION[id]);
$_SESSION[ID] = "";
UNSET($_SESSION[ID]);*/
setcookie("username","");
setcookie("id","");
$loaduser = mysql_fetch_assoc($qr);
if (mysql_num_rows($qr) == '1'){
/*Create session
session_register("usrnm");
$_SESSION[usrnm]="$loaduser[username]";
session_register("id");
$_SESSION[id]="$loaduser[id]";*/
EEPIS-ITS
Proyek Akhir 2005/2006
setcookie("username",$loaduser[username]);
setcookie("id",$loaduser[id]);
message_url("Selamat Datang
$loaduser[nama]","admin.php");
}
else {
message_back('Username/Password anda salah...
data tidak ditemukan');
}
break;
}
}
?>
Admin.php
<?
include "header.php";
function display_list() {
$qr = mysql_query("SELECT * FROM stream ORDER
BY username");
if (mysql_num_rows($qr) <= 0) echo "Tidak ada
administrator yang terdaftar";
else {
?>
<script language='javascript'
type='text/javascript'>
<?
function delConfirm() {
if (confirm('Apakah anda yakin mau
menghapus administrator yang anda pilih ?','2'))
{
return true;
}
else {
EEPIS-ITS
Proyek Akhir 2005/2006
return false;
}
}
?>
</script>
<div align="center"><br>
<a href="?mod=add" class="judul"><img
src="gambar/hotwolf.gif" width="38" height="38"
border="0"
align="absbottom"> Tambah Administrator
Baru</a><br>
</div>
<br>
<table width="70%" border="0" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0"
cellspacing="1" cellpadding="4" class="garis">
<tr align="center" class="header">
<th width="12%">Username</th>
<th width="24%">Nama</th>
<th colspan="2">Option</th>
</tr>
<?
while ($a = mysql_fetch_array($qr)) {
?>
<tr>
<td align="center"
class="teksdua"><?=$a[username];?></td>
<td align="center"
class="teksdua"><?=$a[nama];?></td>
<td width="10%" align="center">
<a href="?mod=edit&id=<?=$a[id] ?>"><img
src="gambar/edit4.jpeg" alt="Edit" width="16"
height="19" border="0"></a></td>
<td width="10%" align="center">
<a href="?mod=del&id=<?=$a[id] ?>"><img
src="gambar/delete2.gif" alt="Hapus" width="19"
EEPIS-ITS
Proyek Akhir 2005/2006
function entry_form() {
global $_POST;
?>
<br>
<h1 align="center"><img
src="gambar/hotwolf.gif" width="38" height="38">
Tambah Administrator Baru</h1>
<form nama="form1" method="post" action="">
<table width="80%" border="0" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0"
align="center" cellpadding="5" cellspacing="1"
class="garis">
<tr class="header">
<th colspan="2">Form tambah admin </th>
</tr>
<tr>
<td width="30%" class="teksdua"
align="right">Nama: </td>
<td width="70%" align="left">
<input class="maindua" nama="nama" type="text"
id="nama2" value="<?=$_POST[nama] ?>"
size="20"></td>
EEPIS-ITS
Proyek Akhir 2005/2006
</tr>
<tr>
<td align="right" class="teksdua">Username:
</td>
<td align="left"><input nama="username"
class="maindua" type="text" id="username2"
value="<?=$_POST[username] ?>" size="15"
maxlength="15"></td>
</tr>
<tr>
<td align="right" class="teksdua">Password:
</td>
<td align="left"><input nama="password1"
class="maindua" type="password" id="password1"
value="<?=$_POST[password1] ?>" size="15"
maxlength="15"></td>
</tr>
<tr>
<td align="right" class="teksdua">Ulangi
Password: </td>
<td align="left"><input nama="password2"
class="maindua" type="password" id="password2"
value="<?=$_POST[password2] ?>" size="15"
maxlength="15"></td>
</tr>
<tr>
<td colspan="2" align="center"><br>
<input nama="Submit" type="button"
class="button" value="Tambah Admin">
<input nama="Submit" type="button"
class="button" value="Batal"
onClick="javascript:history.back()">
<input nama="mod" type="hidden" id="mod"
value="submit_entry"></td>
</tr>
</table></td>
</tr>
</table>
EEPIS-ITS
Proyek Akhir 2005/2006
</form>
<p> </p>
<p> </p>
<?
}
function edit_form() {
global $_GET, $_POST;
if (!is_numeric($_GET[id]))
message_back('Invalid id');
$qr = mysql_query("SELECT * FROM stream WHERE
id='$_GET[id]'");
$z = mysql_fetch_array($qr);
if (emptyString($z)) message_back('Id tidak
ditemukan');
?>
<br>
<h1 align="center"><img
src="gambar/hotwolf.gif" width="40" height="40">
Edit Administrator</h1>
<form nama="form1" method="post" action="">
<table width="80%" border="0" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0"
align="center" cellpadding="5" cellspacing="1"
class="garis">
<tr class="header">
<th colspan="2">Form edit admin </th>
</tr>
<tr>
<td width="30%" class="teksdua"
align="right">Nama: </td>
<td width="70%" align="left">
<input class="maindua" nama="nama" type="text"
id="nama" value="<?=$z[nama] ?>" size="20"></td>
EEPIS-ITS
Proyek Akhir 2005/2006
</tr>
<tr>
<td align="right" class="teksdua">Username:
</td>
<td align="left"><input nama="username"
class="maindua" type="text" id="username"
value="<?=$z[username] ?>" size="15"
maxlength="15" disabled></td>
</tr>
<tr>
<td align="right" class="teksdua">Password
baru: </td>
<td align="left"><input nama="password1"
class="maindua" type="password" id="password1"
value="" size="15" maxlength="15"><span
class="teksdua"><br>
Kosongkan jika tidak ingin mengganti
password</span></td>
</tr>
<tr>
<td align="right" class="teksdua">Ulangi
Password: </td>
<td align="left"><input nama="password2"
class="maindua" type="password" id="password2"
value="" size="15" maxlength="15"></td>
</tr>
<tr>
<td colspan="2" align="center"><br>
<input nama="Submit" type="submit"
class="button" id="Submit" value="Edit
Admin">
<input nama="Submit" type="button"
class="button" id="Submit" value="Batalkan"
onClick="javascript:history.back()">
<input nama="mod" type="hidden" id="mod"
value="submit_edit">
<input nama="user_old" type="hidden"
id="user_old" value="<?=$z[username]?>"></td>
EEPIS-ITS
Proyek Akhir 2005/2006
</tr>
</table></td>
</tr>
</table>
</form>
<p> </p>
<p> </p>
<?
}
function entry_user() {
global $_POST;
if (emptyString($_POST[nama]))
message_back('Nama wajib diisi');
if (emptyString($_POST[username]))
message_back('Username wajib diisi');
if (emptyString($_POST[password1]))
message_back('Password wajib diisi');
if ($_POST[password1] !== $POST[password2])
message_back('Password tidak sama');
$pass = md5($_POST[password1]);
$qr = mysql_query("INSERT stream SET
username='$_POST[username]', password='$pass',
nama='$_POST[nama]'");
if ($qr) {
message_url('Administrator berhasil
ditambahkan','admin.php');
} else message_back('Penambahan administrator
gagal');
}
EEPIS-ITS
Proyek Akhir 2005/2006
function edit_record() {
global $_POST;
if (emptyString($_POST[nama]))
message_back('Nama wajib diisi');
if (!emptyString($_POST[password1])) {
if ($_POST[password1] !== $_POST[password2])
message_back('Password tidak sama');
$pass = md5($_POST[password1]);
$sql = "UPDATE stream SET password='$pass',
nama='$_POST[nama]' WHERE
username='$_POST[user_old]'";
} else {
$sql = "UPDATE stream SET
nama='$_POST[nama]' WHERE
username='$_POST[user_old]'";
}
$qr = mysql_query($sql);
if ($qr) {
message_url('Data berhasil di-
edit','admin.php');
} else message_back('Edit administrator
gagal');
}
function delete_record() {
global $_GET;
if (!is_numeric($_GET[id]))
message_back('Invalid id');
$qr = mysql_query("SELECT * FROM stream WHERE
id='$_GET[id]'");
if (mysql_num_rows($qr) !== 1)
message_back('id tidak ditemukan');
$qr = mysql_query("DELETE FROM stream WHERE
id='$_GET[id]'");
if ($qr) {
EEPIS-ITS
Proyek Akhir 2005/2006
message_url('Delete admin
berhasil','admin.php');
} else message_back('Delete admin gagal');
}
// if (emptyString($_COOKIE[username]))
message_back('Access denied');
printf($_GET[mod]);
printf("\n");
printf($_POST[mod]);
if ($_GET[mod] !== "add" && ($mod !== "edit"))
display_list();
if ($_GET[mod]=="edit") edit_form(); else
if ($_GET[mod] == "add") entry_form();
if ($_POST[mod] == "submit_edit")
edit_record();
if ($_GET[mod] == "del") delete_record();
if ($_POST[mod] == "submit_entry")
entry_user();
include "footer.php";
?>
Open.php
<?
include "header.php";
system(“sudo /usr/sbin/open”);
?>
<table>
<tr>
<td>
<img src="http://<?echo $ip;?>:8003"
width="320" height="240">
</td>
<td>
<table width="30" border="0" cellspacing="0"
cellpadding="0">
<tr>
<td align="center" width="30"><a href="/cgi-
bin/naik.cgi" accesskey=”t”
EEPIS-ITS
Proyek Akhir 2005/2006
onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image6','','pic_but/1
1_1.gif',1)"><img src="gambar/atas1.jpeg"
alt="naik" name="Image6" width="30" height="75"
border="0"></a></td>
</tr>
<tr><td width="30" height="20"> </td></tr>
<tr>
<td align="center" width="30"><a href="/cgi-
bin/turun.cgi" accesskey=”b”
onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image7','','pic_but/1
2_1.gif',1)"><img src="gambar/bawah1.jpeg"
alt="turun" name="Image7" width="30" height="75"
border="0"></a></td>
</tr>
</table>
</td>
<td>
<table border="0" cellspacing="0"
cellpadding="0" align="center">
<tr>
<td width="50"> </td>
<td width="50"><a href="/cgi-
bin/maju.cgi" accesskey=”w”
onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image1','','pic_but/2
_1.gif',1)"><img src="gambar/maju.jpeg"
alt="maju" name="Image1" width="50" height="50"
border="0"></a></td>
<td width="50"> </td>
</tr>
<tr>
<td width="50"><a href="/cgi-
bin/kiri.cgi" accesskey=”a”
onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image2','','pic_but/4
_1.gif',1)"><img src="gambar/kiri.jpeg"
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
Video.php
<?
include "header.php";
system(“sudo /usr/sbin/video”);
?>
<img src="http://<?echo $ip;?>:8004" width="320"
height="240">
<?
/*script di atas digunakan oleh user biasa untuk
menampilkan video streaming*/
include "footer.php";
?>
Viewpict.php
<?
include "header.php";
require_once "multipage.php";
//if (emptyString($_COOKIE[id]))
message_back('Access Denied !');
function caridata() {
global $i;
$handle = opendir('picture');
$data = array();
$i = 1;
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != ".." && $file
!= "Thumbs.db") {
$z['sa'] = "$file";
$data[] = $z;
$i++;
}
}
closedir($handle);
return $data;
}
EEPIS-ITS
Proyek Akhir 2005/2006
$a = caridata();
$mp = &new multipage($a, 10);
$p = 0;
include "footer.php";
?>
Preview.php
<?
include "header.php";
$lokasi = "picture/$_GET[id]";
$ambil = getimagesize($lokasi);
$panjang = $ambil[0];
$lebar = $ambil[1];
switch($ambil[2]) {
case 1 : $ext = "GIF";
break;
case 2 : $ext = "JPG";
break;
case 3 : $ext = "PNG";
break;
case 4 : $ext = "SWF";
break;
}
EEPIS-ITS
Proyek Akhir 2005/2006
$tipe = filetype($lokasi);
$besar = formatNumber(filesize($lokasi)/1000,
2);
?>
<table width="70%" border="0" cellspacing="0"
cellpadding="0" class="garis">
<tr class="header">
<td colspan="2">File info: </td>
</tr>
<tr>
<td width="150" align="right"
class="teksdua">File name: </td>
<td class="tecksdua"> <?=$_GET[id];?></td>
</tr>
<tr>
<td class="teksdua" width="150"
align="right">Extention: </td>
<td class="tecksdua"> <?=$ext;?></td>
</tr>
<tr>
<td class="teksdua" width="150"
align="right">Size: </td>
<td class="tecksdua"> <? echo "$panjang x
$lebar (pixels)";?></td>
</tr>
<tr>
<td class="teksdua" width="150"
align="right">Big: </td>
<td class="tecksdua"> <?=$besar;?>
KBytes</td>
</tr>
</table>
<br>
<img src="picture/<?=$_GET[id]?>">
<?
include "footer.php";
?>
EEPIS-ITS
Proyek Akhir 2005/2006
Multipage.php
<script language="php">
class multipage {
var $source, $pagesize, $skipvar;
var $data, $pageCount, $pageCurrent, $skipPos,
$numBegin, $numEnd, $numCount;
var $count;
var $skipPrev, $skipNext;
var $htmlNav, $htmlNavPages;
var $sepPages;
var $navFormat;
var $navPrev, $navNext;
var $pageURI;
function getPageURI($pageNo) {
if (isset($this->pageURI[$pageNo])) return
$this->pageURI[$pageNo];
else return '';
}
EEPIS-ITS
Proyek Akhir 2005/2006
$navPrev=' < ',
$navNext=' > ') {
$this->source=$source;
$this->pagesize=$pagesize;
$this->skipvar=$skipvar;
$this->sepPages=$sepPages;
$this->navFormat=$navFormat;
$this->navPrev=$navPrev;
$this->navNext=$navNext;
if (!is_array($this->source)) {
$qr=$this->source;
$this->source=array();
while ($z=mysql_fetch_assoc($qr)) $this-
>source[]=$z;
}
$this->data=$source;
$this->pageCount=ceil(count($this-
>source)/$pagesize);
if (isset($HTTP_GET_VARS['skip'])) $this-
>skipPos=$HTTP_GET_VARS['skip'];
else if (isset($GLOBALS['skip'])) $this-
>skipPos=$GLOBALS['skip'];
else $this->skipPos=0;
if (!isset($GLOBALS['skip']))
$GLOBALS['skip']=$this->skipPos;
if ($this->skipPos>=count($this->source))
$this->skipPos=count($this->source)-1;
if ($this->skipPos<0) $this->skipPos=0;
$this->skipPrev=$this->skipPos-$this-
>pagesize;
if ($this->skipPrev<0) $this->skipPrev=0;
$this->skipNext=$this->skipPos+$this-
>pagesize;
if ($this->skipNext>=count($this->source))
$this->skipNext=count($this->source)-1;
EEPIS-ITS
Proyek Akhir 2005/2006
$this->numBegin=$this->skipPos+1;
$this->numEnd=$this->skipPos+$this-
>pagesize;
if ($this->numEnd>count($this->source))
$this->numEnd=count($this->source);
$this->numCount=count($this->source);
$this->pageCurrent=1+floor($this-
>skipPos/$this->pagesize);
$this->pageURI=array();
for ($i=1; $i<=$this->pageCount; $i++) {
if ($i==$this->pageCurrent) $this-
>pageURI[$i]='';
else {
$vars=$GLOBALS['HTTP_GET_VARS'];
$vars[$this->skipvar]=($i-1)*$this-
>pagesize;
$u=parse_url($GLOBALS['HTTP_SERVER_VARS']['REQUE
ST_URI']);
$this-
>pageURI[$i]=$u['path'].makeQueryString($vars);
}
}
/* reset($this->source);
$no=1;
$this->data=array();
while (list($dummy, $z)=each($this->source))
{
if (($no>=$this->numBegin) && ($no<=$this-
>numEnd)) {
$z['multipageNo']=$no;
$z['multipageNoReversed']=$this-
>numCount+$no-1;
$this->data[]=$z;
}
$no++;
} */
EEPIS-ITS
Proyek Akhir 2005/2006
reset($this->source);
$no=1;
$this->data=$this->source;
while (list($a, $b)=each($this->data)) {
if (($no>=$this->numBegin) && ($no<=$this-
>numEnd)) {
if (is_array($this->data[$a])) {
$this->data[$a]['multipageNo']=$no;
$this-
>data[$a]['multipageNoReversed']=$this-
>numCount-$no+1;
}
}
else unset($this->data[$a]);
$no++;
}
reset($this->data);
$this->count=count($this->data);
$navPages=array();
for ($i=1; $i<=$this->pageCount; $i++) {
$navPages[]=$this->mpLink($this-
>getPageURI($i), '%link:title%', "$i");
}
$this->htmlNavPages=join($this->sepPages,
$navPages);
$trans=array(
'%begin%'=>$this->numBegin,
'%end%'=>$this->numEnd,
'%count%'=>$this->numCount,
'%pages%'=>$this->htmlNavPages,
'%prev%'=>$this->mpLink($this-
>getPageURI($this->pageCurrent-1),
'%link:title%', $this->navPrev, true),
'%next%'=>$this->mpLink($this-
>getPageURI($this->pageCurrent+1),
'%link:title%', $this->navNext, true));
EEPIS-ITS
Proyek Akhir 2005/2006
$this->htmlNav='<span
class="multipageNav">'.strtr($this->navFormat,
$trans).'</span>';
}
}
</script>
logout.php
<?
require_once "inc.php";
setcookie("username","");
setcookie("id","");
File turun.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/turun
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
EEPIS-ITS
Proyek Akhir 2005/2006
File maju.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/maju
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
File mundur.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/mundur
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
File kiri.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/kiri
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
File kanan.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/kanan
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
EEPIS-ITS
Proyek Akhir 2005/2006
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
File stop.cgi
#!/bin/sh
echo Content-type: text/html; charset=iso-8859
echo
sudo /usr/sbin/stop
echo
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;
URL=http://robot-wireless.eepis-
its.edu/TA/open.php\">";
int main(){
system("/etc/init.d/motion stop");
printf("Loading..........!\n");
system("/etc/init.d/camserv start");
}
File video.c
#include<stdio.h>
#include<stdlib.h>
int main(){
system("/etc/init.d/camserv stop");
printf("Loading...........!\n");
system("/etc/init.d/motion start");
}
EEPIS-ITS
Proyek Akhir 2005/2006
EEPIS-ITS
Proyek Akhir 2005/2006
PROFIL PENULIS
Nama : Nilluh A.P.P.D.A.P
TTL : Kediri, 18 Maret 1985
Alamat : Jl. Waringin No. 124
Ds. Tempurejo Kec Pesantren
RT 2 RW 1 Kota Kediri
Telepon : (0354)695463
Handphone : 081334659061
Email : dhian_adhi@yahoo.com /
adhi_putri@telkom.net
EEPIS-ITS