Bab ini akan menjelaskan proses pembuatan web jejaring sosial untuk Civitas
Akademika UBAYA dengan hasil analisis dan desain sistem yang telah dibahas
pada bab sebelumnya. Aplikasi membutuhkan beberapa perangkat lunak dan
bahasa pemrograman yang memudahkan implementasi aplikasi. Adapun software
dan bahasa pemrograman yang digunakan adalah:
Web server : XAMPP
Database server : Mysql
Bahasa pemrograman : PHP
Bab ini meliputi implementasi basis data yang menjelaskan tentang
pembuatan tabel basis data hasil pemetaan relasi ER Diagram pada bab
sebelumnya dan implementasi program mengenai detail dari pembuatan website
jejaring sosial.
5.1. Implementasi Basis Data
Pada sub bab ini akan dibahas mengenai basis data yang merupakan hasil
dari pemetaan Entity Relationship Diagram pada desain sistem di bab
sebelumnya, dihasilkan tabel-tabel yang digunakan untuk menyimpan data yang
akan digunakan pada kamus online ini. Berikut adalah struktur dari tabel-tabel
Tabel dosenajarmkbuka
Tabel ini digunakan untuk menyimpan data-data dari mata kuliah yang
diajarkan oleh dosen. Field-field yang disediakan adalah NPK,
KodeMkBuka, dan KP. Struktur dari tabel dapat dilihat Tabel 5. 1.
Tabel 5. 1 Struktur tabel dosenajarmkbuka
Nama Field Tipe panjang keterangan
NPK char 10 Field yang berisi primary key dari
dosen
KodeMkBuka varchar 15 Field yang menyimpan Kode
Mata Kuliah yang diajarkan oleh
dosen.
KP varchar 20 Field yang menyimpan KP dari
Mata Kuliah yang diajarkan
dosen
Tabel karyawan
Tabel ini digunakan untuk menyimpan data-data dari karyawan, dalam hal
ini adalah dosen. Field-field yang disediakan adalah NPK, KodeDosen,
Nama, Alamat, dan KodeKota. Struktur dari tabel dapat dilihat pada Tabel
5.2.
Tabel 5.2 Struktur tabel karyawan
Nama Field Tipe panjang Keterangan
NPK char 10 Field yang berisi primary key
KodeDosen varchar 8 Field yang berisi Kode Dosen
yang dikeluarkan oleh fakultas
Nama varchar 40 Field yang berisi nama dosen
KodeKota varchar 4 Field yang berisi kota domisili
dosen
Tabel kota
Tabel ini digunakan untuk menyimpan data-data dari kota. Field-field yang
disediakan adalah KodeKota dan Nama. Struktur dari tabel dapat dilihat
pada Tabel 5.3.
Tabel 5.3 Struktur tabel kota
Nama Field Tipe panjang Keterangan
KodeKota char 4 Field yang berisi primary key
Nama varchar 30 Field yang berisi nama kota
Tabel mahasiswa
Tabel ini digunakan untuk menyimpan data-data mahasiswa. Field-field
yang disediakan adalah NRP, Nama, TglLahir, Agama, Gender,
IPKTanpaE, IPKDenganE, Alamat. Struktur dari tabel dapat dilihat pada
Tabel 5.4.
Tabel 5.4 Struktur tabel mahasiswa
Nama Field Tipe panjang Keterangan
NRP varchar 12 Field yang berisi primary key
Nama varchar 40 Field yang berisi nama mahasiswa
TglLahir date Field yang berisi tanggal lahir mahasiswa
Agama enum ('Buddh
a','Hindu
','Islam','
Kristen
Katholik
','Kristen
Protesta
n','Kong
hucu')
Gender enum ('L','P') Field yang berisi gender mahasiswa IPKTanpaE Float (4,3) Field yang berisi IPK mahasiswa tanpa E IPKDenganE Float (4,3) Field yang berisi IPK mahasiswa dengan E Alamat Varchar 100 Field yang berisi alamat mahasiswa
Tabel matakuliah
Tabel ini digunakan untuk menyimpan data-data dari matakuliah.
Field-field yang disediakan adalah KodeMk, Nama, tglfoto, dan sks. Struktur
dari tabel dapat dilihat pada Tabel 5.5.
Tabel 5.5 Struktur tabel matakuliah
Nama Field Tipe panjang Keterangan
KodeMk varchar 10 Field yang berisi primary key
Nama varchar 40 Field yang berisi nama mata
kuliah
sks smallint 6 Field yang berisi tanggal foto
tersebut di-upload oleh user
Tabel mhsambilmk
Tabel ini digunakan untuk menyimpan data-data dari mata kuliah yang
diambil mahasiswa, beserta nilai mahasiswa. Field-field yang disediakan
adalah NRP, KodeMkBuka, KP, NTS, NAS, NA, KodeNisbi. Struktur dari
tabel dapat dilihat pada Tabel 5.6.
Tabel 5.6 Struktur tabel mhsambilmk
Nama Field Tipe panjang Keterangan
NRP varchar 12 Field yang berisi primary key
Kuliah yang diambil oleh
mahasiswa
KP varchar 2 Field yang berisi KP Mata Kuliah
yang diambil oleh mahasiswa
NTS smallint 6 Field yang berisi Nilai Tengah
Semester mahasiswa
NAS smallint 6 Field yang berisi Nilai Akhir
Semester mahasiswa
NA float 6,3 Field yang berisi Nilai Akhir
mahasiswa
KodeNisbi varchar 2 Field yang berisi Nilai nisbi dari
mahasiswa yang bernilai
A,AB,B,BC,C,D,E
Tabel mkbuka
Tabel ini digunakan untuk menyimpan data-data dari mata kuliah yang
dibuka. Field yang disediakan adalah KodeMkBuka, KodeMK, UTSTgl,
UTSTgl, UASTgl, JmlPertemuan, ThnAkademik, Semester. Struktur dari
tabel dapat dilihat pada Tabel 5.7.
Tabel 5.7 Struktur tabel mkbuka
Nama Field Tipe panjang Keterangan
KodeMkBuka Varchar 15 Field yang merupakan primary key.
KodeMK varchar 10 Field yang berisi kode mata kuliah.
UTSTgl date Field yang berisi tanggal UTS
UASTgl date Field yang berisi tanggal UAS
ThnAkademik Varchar 4 Field yang berisi Tahun Akademik
pada saat mata kuliah dibuka
Semester enum ('gasal','
genap','t
Field yang berisi semester
rimester
3')
dibuka.
Tabel mkbukajadwal
Tabel ini digunakan untuk menyimpan data-data dari jadwal mata kuliah
yang dibuka. Field-field yang disediakan adalah KodeMkBuka, KP, Hari,
JamAwal, JamAkhir. Struktur dari tabel dapat dilihat pada Tabel 5.8.
Tabel 5.8 Struktur tabel mkbukajadwal
Nama Field Tipe panjang Keterangan
KodeMkBuka varchar 15 Field yang berisi Kode Mata Kuliah
yang dibuka
KP varchar 2 Field yang berisi KP dari Mata Kuliah
yang dibuka
Hari enum ('Senin','
Selasa','
Rabu','K
amis','Ju
mat','Sa
btu','Min
ggu')
Field yang berisi hari mata kuliah yang
dibuka
JamAwal time Field yang berisi jam mulai mata kuliah
JamAkhir time Field yang berisi jam selesai mata
Tabel mkbukakp
Tabel ini digunakan untuk menyimpan data-data dari KP yang dibuka oleh
mata kuliah. Field-field yang disediakan adalah KodeMkBuka dan KP.
Struktur dari tabel dapat dilihat pada Tabel 5.9
Tabel 5.9 Struktur tabel mkbukakp
Nama Field Tipe panjang Keterangan
KodeMkBuka varchar 15 Field yang berisi Kode Mata
Kuliah yang dibuka
KP varchar 2 Field yang berisi KP dari Mata
Kuliah yang dibuka
Tabel album
Tabel ini digunakan untuk menyimpan data-data dari album foto.
Field-field yang disediakan adalah id_album, subyekAlbum, ketAlbum, id_user,
id_fotoCover. Struktur dari tabel dapat dilihat pada Tabel 5.10
Tabel 5.10 Struktur tabel album
Nama Field Tipe panjang Keterangan
id_album int 11 Field yang berisi primary key
subyekAlbum varchar 50 Field yang berisi nama
ketAlbum varchar 100 Field yang berisi keterangan
album
id_user int 11 Field yang berisi id user yang
memiliki album
id_fotoCover int 11 Field yang berisi id foto untuk
Tabel attforum
Tabel ini digunakan untuk menyimpan attachment dari forum. Field-field
yang disediakan adalah id_attforum, jenis_file, dan id_forum. Struktur dari
tabel dapat dilihat pada Tabel 5.11
Tabel 5.11 Struktur tabel attforum
Nama Field Tipe panjang Keterangan
id_attforum int 11 Field yang berisi primary key
jenis_file varchar 50 Field yang berisi jenis ekstensi
file dari attachment forum
id_forum int 11 Field yang berisi id forum yang
akan ditambahkan attachment file
Tabel bahan
Tabel ini digunakan untuk menyimpan data-data dari bahan mata kuliah.
Field-field yang disediakan adalah id_bahan, ketBahan, subyekBahan,
timestamp, jenis_file, tipe, id_kelas, dan id_mk. Struktur dari tabel dapat
dilihat pada Tabel 5.12
Tabel 5.12 Struktur tabel bahan
Nama Field Tipe panjang Keterangan
id_bahan integer 11 Field yang berisi primary key
ketBahan varchar 100 Field yang berisi keterangan dari
bahan mata kuliah
subyekBahan varchar 50 Field yang berisi judul dari bahan
mata kuliah
timestamp CURRENT
_TIMEST
AMP
100 Field yang berisi waktu bahan mata
kuliah diupload
mata kuliah
tipe enum ('UTS','
UAS')
Field yang berisi username dari
anggota yang telah menulis topik
tersebut.
id_kelas int 11 Field yang berisi id kelas
id_mk int 11 Field yang berisi id mata kuliah
sebagai pelajaran dari bahan
Tabel catatan
Tabel ini digunakan untuk menyimpan catatan dari user. Field-field yang
disediakan adalah id_catt, id_user, tanggal, topik, dan isi. Struktur dari
tabel dapat dilihat pada Tabel 5.13
Tabel 5.13 Struktur tabel catatan
Nama Field Tipe panjang Keterangan
id_catt int 11 Field yang berisi primary key
id_user int 11 Field yang berisi id user
tanggal timestamp Field yang berisi waktu catatan
disimpan
topik text Field yang berisi topik catatan
isi text Field yang berisi isi catatan
Tabel chat
Tabel ini digunakan untuk menyimpan history percakapan user. Field-field
yang disediakan adalah id, from, to, message, sent dan recd. Struktur dari
tabel dapat dilihat pada Tabel 5.14
Tabel 5.14 Struktur tabel chat
Nama Field Tipe panjang Keterangan
id int 10 Field yang berisi primary key
from int 255 Field yang berisi id user pengirim
to int 255 Field yang berisi id user penerima
percakapan
message text Field yang berisi isi percakapan
sent datetime Field yang berisi waktu
percakapan
recd int 10 Field yang menandakan apakah
percakapan sudah dibaca oleh
penerima atau belum
Tabel event
Tabel ini digunakan untuk menyimpan event yang diadakan oleh user.
Field-field yang disediakan adalah id_event, tempat, id_user, keterangan,
jamMulaiE, jamSelesaiE dan tema. Struktur dari tabel dapat dilihat pada
Tabel 5.15
Tabel 5.15 Struktur tabel event
Nama Field Tipe panjang Keterangan
id_event int 11 Field yang berisi primary key
tempat varchar 50 Field yang berisi lokasi event
yang diadakan user
tanggal date Field yang berisi tanggal event
diadakan
id_user int 11 Field yang berisi id user yang
mengadakan event
keterangan text Field yang berisi keterangan
event
jamMulaiE time Field yang berisi jam mulai event
jamSelesaiE time Field yang berisi jam selesai
tema varchar 50 Field yang berisi tema event
Tabel forum
Tabel ini digunakan untuk menyimpan forum yang diadakan oleh user.
Field-field yang disediakan adalah id_forum, id_admin, topik, isi, dan
timestamp. Struktur dari tabel dapat dilihat pada Tabel 5.16
Tabel 5.16 Struktur tabel forum
Nama Field Tipe panjang Keterangan
id_forum int 11 Field yang berisi primary key
id_admin int 11 Field yang berisi user yang
membuka diskusi
topik varchar 50 Field yang berisi topik forum
isi varchar 3500 Field yang berisi keterangan
forum
Tabel foto
Tabel ini digunakan untuk menyimpan foto yang diupload oleh user.
Field-field yang disediakan adalah subyekFoto, ketFoto, jenisFoto,
id_foto, id_album dan timestamp. Struktur dari tabel dapat dilihat pada
Tabel 5.17
Tabel 5. 17 Struktur tabel foto
Nama Field Tipe panjang Keterangan
id_foto int 11 Field yang berisi primary key
subyekFoto varchar 50 Field yang berisi judul foto
ketFoto varchar 50 Field yang berisi keterangan foto
file foto
id_album int 11 Field yang berisi id album tempat
menampung foto
timestamp timestamp Field yang berisi waktu foto
diupload
Tabel fotoevent
Tabel ini digunakan untuk menyimpan foto dari event yang diadakan oleh
user. Field-field yang disediakan adalah subyekFoto, ketFoto, jenisFoto,
id_foto, id_album dan timestamp. Struktur dari tabel dapat dilihat pada
Tabel 5.18
Tabel 5.18 Struktur tabel fotoevent
Nama Field Tipe panjang Keterangan
id_foto int 11 Field yang berisi primary key
id_event int 11 Field yang berisi id event yang
menandakan foto yang akan
diupload pada event tertentu subyekFoto varchar 100 Field yang berisi judul foto event
ketFoto varchar 500 Field yang berisi keterangan foto
event
jenisFoto varchar 10 Field yang berisi jenis ekstensi
file foto yang diupload
timestamp timestamp Field yang berisi waktu foto
diupload
Tabel isiforum
Tabel ini digunakan untuk menyimpan isi forum yang dikirimkan oleh
user. Field-field yang disediakan adalah id_isiforum, komentar, timestamp,
Tabel 5.19 Struktur tabel isiforum
Nama Field Tipe panjang Keterangan
id_isiforum int 11 Field yang berisi primary key
Komentar text Field yang berisi isi forum
sebagai balasan dari user lain
Timestamp timestamp Field yang berisi waktu
pengiriman komentar untuk
forum
id_user int 11 Field yang berisi id user yang
mengirimkan balasan komentar
untuk diskusi
id_topik int 11 Field yang berisi id topik diskusi
sebagai tempat menampung
komentar
Tabel jadwalkuistugas
Tabel ini digunakan untuk menyimpan jadwal kuis dan tugas serta bahan,
dan persentase masing-masing kuis dan tugas. Field-field yang disediakan
adalah id_kt, jenis_kt, tanggal, jam, hari, bahan, id_kelas, ke, tipe, persen.
Struktur dari tabel dapat dilihat pada Tabel 5.20
Tabel 5.20 Struktur tabel jadwalkuistugas
Nama Field Tipe panjang Keterangan
id_kt int 11 Field yang berisi primary key
jenis_kt enum ('Tugas','
Kuis')
Field yang berisi jenis tes
tanggal date Field yang berisi tanggal kuis atau deadline
tugas diadakan
ruang varchar 11 Field yang berisi ruang tes diadakan atau
tempat pengumpulan tes
akhir pengumpulan tugas
hari enum ('Senin','
Selasa','
Rabu','K
amis','Ju
mat','Sa
btu')
Field yang berisi hari tes diadakan atau
hari terakhir pengumpulan tugas
bahan varchar 500 Field yang berisi bahan tes
id_kelas varchar 15 Field yang berisi id kelas yang mengadakan
tes
ke int 11 Field yang berisi urutan tes
tipe enum ('UTS','
UAS')
Field yang berisi tes untuk UTS atau UAS
persen int 3 Field yang berisi persentase dari tes
Tabel komentaralbum
Tabel ini digunakan untuk menyimpan komentar album. Field-field yang
disediakan adalah id_album, id_user, timestamp, dan isi. Struktur dari
tabel dapat dilihat pada Tabel 5.21
Tabel 5.21 Struktur tabel komentaralbum
Nama Field Tipe panjang Keterangan
id_album Int 11 Field yang berisi primary key
id_user Int 11 Field yang berisi id user yang
mengirim komentar
timestamp timestamp Field yang berisi waktu
pengiriman komentar untuk
album
isi text Field yang berisi komentar album
Tabel komentarevent
Tabel ini digunakan untuk menyimpan komentar album. Field-field yang
disediakan adalah id_album, id_user, timestamp, dan isi. Struktur dari
tabel dapat dilihat pada Tabel 5.22
Tabel 5.22 Struktur tabel komentarevent
Nama Field Tipe panjang Keterangan
id_komentar Int 11 Field yang berisi primary key
id_event Int 11 Field yang berisi id event
id_pengirim Int 11 Field yang berisi id user yang
mengirimkan komentar untuk
event
Komentar text Field yang berisi komentar untuk
event tertentu
Timestamp timestamp Field yang berisi waktu komentar
event dikirimkan
Tabel komentarfoto
Tabel ini digunakan untuk menyimpan komentar foto. Field-field yang
disediakan adalah id_foto, id_user, timestamp, dan isi. Struktur dari tabel
dapat dilihat pada Tabel 5.23
Tabel 5.23 Struktur tabel komentarfoto
Nama Field Tipe panjang Keterangan
id_foto Int 11 Field yang berisi id foto yang
akan dikomentari
id_user Int 11 Field yang berisi id user yang
mengomentari foto
foto dikirmkan
isi varchar 500 Field yang berisi komentar foto
Tabel komentarshoutout
Tabel ini digunakan untuk menyimpan komentar shoutout. Field-field yang
disediakan adalah id_shoutout, id_user, isi, timestamp. Struktur dari tabel dapat
dilihat pada Tabel 5.24
Tabel 5.24 Struktur tabel komentarshoutout
Nama Field Tipe panjang Keterangan
id_shoutout Int 11 Field yang berisi id shoutoutyang
akan dikomentari
id_user Int 11 Field yang berisi id user yang
mengomentari shoutout user isi varchar 1000 Field yang berisi isi komentar
shoutout
Timestamp timestamp Field yang berisi waktu
pengiriman komentar shoutout
Tabel memberevent
Tabel ini digunakan untuk menyimpan member event. Field-field yang
disediakan adalah id_event, id_user. Struktur dari tabel dapat dilihat pada
Tabel 5.25
Tabel 5.25 Struktur tabel memberevent
Nama Field Tipe panjang Keterangan
id_event Int 11 Field yang berisi id event
id_user Int 11 Field yang berisi user yang
menjadi member pada event
Tabel nilai
Tabel ini digunakan untuk menyimpan nilai. Field-field yang disediakan
adalah id_kt, id_mhs, nilai. Struktur dari tabel dapat dilihat pada Tabel
5.26
Tabel 5.26 Struktur tabel nilai
Nama Field Tipe panjang Keterangan
id_kt Int 11 Field yang berisi id kuis tugas
dari jadwalkuistugas
id_mhs Int 11 Field yang berisi id mahasiswa
yang akan mendapat nilai
nilai Int 11 Field yang berisi nilai mahasiswa
Tabel online
Tabel ini digunakan untuk menyimpan online. Field-field yang disediakan
adalah session_id, id_user, last_time. Struktur dari tabel dapat dilihat pada
Tabel 5.27
Tabel 5. 27 Struktur tabel online
Nama Field Tipe panjang Keterangan
session_id varchar 32 Field yang berisi primary key
id_user Int 11 Field yang berisi
last_time timestamp Field yang berisi
Tabel pesan
Tabel ini digunakan untuk menyimpan pesan. Field-field yang disediakan
adalah id_pesan, id_pengirim, id_penerima, id_topik, timestamp,
subyekPesan, isi. Struktur dari tabel dapat dilihat pada Tabel 5.28
Tabel 5.28 Struktur tabel pesan
Nama Field Tipe panjang Keterangan
id_pengirim Int 11 Field yang berisi id user yang
menjadi pengirim pesan
id_penerima Int 11 Field yang berisi id user yang
menjadi pengirim pesan
id_topik Int 11 Field yang berisi id topik pesan
Timestamp timestamp Field yang berisi waktu pesan
dikirim
subyekPesan varchar 100 Field yang berisi judul pesan
Isi text Field yang berisi isi pesan
Tabel phototags
Tabel ini digunakan untuk menyimpan phototags. Field-field yang
disediakan adalah id, id_foto, Title, x1, y1, x2, y2, width, height. Struktur
dari tabel dapat dilihat pada Tabel 5.29
Tabel 5.29 Struktur tabel phototags
Nama Field Tipe panjang Keterangan
id int 255 Field yang berisi primary key
id_foto int 11 Field yang berisi id foto yang
akan ditag
Title varchar 255 Field yang berisi nama orang
yang ditag
x1 Int 11 Field yang berisi lokasi titik x kiri
atas letak tagging foto
y1 Int 11 Field yang berisi lokasi titik y kiri
atas letak tagging foto
x2 Int 11 Field yang berisi lokasi titik x
kanan bawah letak tagging foto
y2 Int 11 Field yang berisi lokasi titik y
kanan bawah letak tagging foto
yang akan ditag
height Int 11 Field yang berisi lebar area yang
akan ditag
Tabel shoutout
Tabel ini digunakan untuk menyimpan shoutout. Field-field yang
disediakan adalah id_shoutout, timestamp, id_user, id_jenisshoutout,
isishoutout. Struktur dari tabel dapat dilihat pada Tabel 5.30
Tabel 5.30 Struktur tabel shoutout
Nama Field Tipe panjang Keterangan
id_shoutout Int 11 Field yang berisi primary key
timestamp timestamp Field yang berisi waktu shoutout
id_user Int 11 Field yang berisi id user yang
mengirimkan shoutout
id_jenisshoutout Int 11 Field yang berisi id jenis shoutout
(1 untuk shoutout 2 untuk wall) isishoutout varchar 500 Field yang berisi isi shoutout
Tabel teman
Tabel ini digunakan untuk menyimpan teman. Field-field yang disediakan
adalah id_subyek, id_obyek, statu. Struktur dari tabel dapat dilihat pada
Tabel 5.31
Tabel 5.31 Struktur tabel teman
Nama Field Tipe panjang Keterangan
id_subyek Int 11 Field yang berisi id user sebagai
pengirim permintaan teman
id_obyek Int 11 Field yang berisi id user sebagai
ditolak permintaan teman
Tabel user
Tabel ini digunakan untuk menyimpan user. Field-field yang disediakan
adalah id_user, id_shoutout, password, hobi, deskripsi, email, sebagai,
foto, height. Struktur dari tabel dapat dilihat pada Tabel 5.32
Tabel 5.32 Struktur tabel user
Nama Field Tipe panjang Keterangan
id_user Int 11 Field yang berisi primary key
id_shoutout varchar 100 Field yang berisi shoutout user
Password varchar 20 Field yang berisi password user
Hobi text Field yang berisi hobi user
Deskripsi text Field yang berisi dekripsi profil
user
Email varchar 50 Field yang berisi email user
Sebagai enum ('Mhs','Dose
n','Admin','K
aryawan')
Field yang berisi peran dari user
Foto Mediumte
xt
Field yang berisi foto yang
digunakan untuk foto profil
5.2. Implementasi Proses
Pada sub bab ini akan dibahas mengenai implementasi dari desain proses
yang telah dibuat pada bab sebelumnya. Adapun proses-proses yang akan dibahas,
yaitu proses login, proses ubah profil, proses tambah catatan, proses upload foto,
Pada proses tambah login ini akan membahas tentang bagaimana user dapat
menyimpan login ke web situs jejaring sosial. Pada listing program ini diperiksa
terlebih dahulu apakah isian yang diisikan telah diisi dengan lengkap dan sesuai
dengan NRP/NPK dan password. Jika lengkap dan benar maka data user dapat
login ke halaman utama. Listing program dari proses login ini dapat dilihat pada
Listing 5.1.
Listing 5.1 Listing program login
<? session_start();
require_once "../lib/config.inc.php"; require_once"../lib/Database.class.php"; require_once "../lib/Session.class.php";
$db = new Database (DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); $db->connect(); $idUser=$_POST["id_utser"]; $pw=$_POST["password"]; $peran=$_POST["peran"]; $_SESSION["peran"]=$peran; if($peran=="mahasiswa")
$query = "SELECT * FROM ubaya.mahasiswa mhs INNER JOIN tgsakhir.user u ON mhs.NRP=u.id_user WHERE mhs.NRP='$idUser' AND u.password=’$pw’";
else
$query = "SELECT * FROM ubaya.karyawan dsn INNER JOIN tgsakhir.user u ON dsn.NPK=u.id_user WHERE dsn.NPK='$idUser' AND u.password=’$pw’";
$hasilQuery=mysql_query($query); $baris=mysql_num_rows($hasilQuery); if($baris>=1) { if($peran=="mahasiswa") $queryAmbilSemua=mysql_query("SELECT
mhs.*,u.hobi,u.deskripsi,u.id_user from ubaya.mahasiswa mhs INNER JOIN tgsakhir.user u ON mhs.NRP=u.id_user WHERE mhs.NRP='$idUser'");
else
$queryAmbilSemua=mysql_query("SELECT
dsn.*,u.hobi,u.deskripsi,u.id_user from ubaya.karyawan dsn INNER JOIN tgsakhir.user u ON dsn.NPK=u.id_user WHERE dsn.NPK='$idUser'");
$fetchAmbilSemua=mysql_fetch_array($queryAmbilSemua); $_SESSION["masterAmbilSemua"] = $fetchAmbilSemua;
$_SESSION["masterQueryAmbilSemua"]=$queryAmbilSemua; echo "1";
$objSession = new whosOnline(session_id(),$idUser); //session_id sudah otomatis mengenerate session_id tiap buka halaman
$objSession->tambahSession(); $_SESSION['username'] =$idUser;
$_SESSION['namalain'] =$fetchAmbilSemua['Nama']; }
Untuk proses ubah profil ini akan membahas tentang bagaimana user dapat
mengubah profil di halaman profil. Pada proses ini yang dilakukan adalah
mengambil nilai dari database yang kemudian ditampilkan di textbox, kemudian
setelah klik simpan, data disimpan ke dalam database. Listing program ini dapat
dilihat pada Listing 5.2.
Listing 5.2 Listing program ubah profil
Untuk proses tambah catatan ini akan membahas tentang bagaimana user
dapat menambah catatan pada profilnya. Pada proses ini yang dilakukan adalah
mengambil nilai dari textbox kemudian data disimpan ke dalam database. Jika
textbox tidak terisi maka akan muncul peringatan. Listing program ini dapat
dilihat pada Listing 5.3.
Listing 5.3 Listing program tambah catatan
<? require "../lib/config.inc.php"; require "../lib/Database.class.php";
$db = new Database (DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); $db->connect();
$idUser = $_POST["idUser"]; $user[id_user] =$_POST["idUser"]; $user[email] =$_POST["email"]; $user[alamat] =$_POST["alamat"]; $user[hobi] =$_POST["hobi"];
$user[deskripsi] =$_POST["deskripsi"];
$hasil = $db->query_update("user", $user, "id_user='$idUser'"); echo “Data sudah disimpan”;
include "../content/simpanSession.php"; ?>
<? session_start();
require ("../lib/sambungDatabase.php");
$masterAmbilSemua = $_SESSION[masterAmbilSemua]; $topik = $_POST[topik];
$catt = $_POST[catt]; if($topik!=""&&$catt!="")
$sql = mysql_query("INSERT INTO tgsakhir.catatan (id_user,tanggal,topik,isi) VALUES
($masterAmbilSemua[id_user],CURRENT_TIMESTAMP,'$topik','$catt')"); else
echo "Isian masih kosong";
Untuk proses upload foto ini akan membahas tentang bagaimana user
dapat mengupload foto untuk ditampilkan di profilnya. Listing program dari
proses ini dapat dilihat pada Listing 5.4.
Listing 5.4 Listing program upload foto
Untuk proses log in akan dibahas bagaimana user akan masuk sebagai
anggota atau sebagai administrator. Maka dari itu dilakukan pengecekan jika
Untuk proses hapus wall ini akan membahas tentang bagaimana user dapat
menghapus pesan wall untuk wall user lain. Listing program dari proses ini dapat
dilihat pada Listing 5.5.
Listing 5.5 Listing program hapus wall
<?
require ("lib/sambungDatabase.php"); require( "lib/class.upload.php" ); $idAlbum = $_POST["idAlbum"]; for($i=0;$i<5;$i++)
{
$a = $_FILES["file".$i];
$objUpload = new upload($_FILES["file".$i]); if($objUpload->uploaded) {
$extension = $objUpload->file_src_name_ext; $sql = mysql_query("INSERT INTO
tgsakhir.foto(id_album,jenisFoto) VALUES ('$idAlbum','$extension')"); $idFoto = mysql_insert_id();
$objUpload->file_new_name_body = $idFoto; $objUpload->Process('images/foto/'); if ($objUpload->processed) {
$objUpload->Clean(); } else {
} }
}
header ("location: editfoto.php?id=$idAlbum"); exit;
//Listing “script/tampilShoutOutWall.js” function hapusKomentar(idShoutout) {
params="idShoutOut=" + idShoutout;
var xmlhttp = GetXMLHTTP ("POST", "ajax/hapusKS.php", params); xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) {
hasil = xmlhttp.responseText; if(hasil=="true")
{
tabel = document.getElementById("shout_"+idShoutout);
tabel.parentNode.removeChild(tabel); }
} }
else { }
return false; }
xmlhttp.send(params); }
// Listing "ajax/hapusKS.php" <?php
include "../lib/Profile.class.php"; include "../lib/sambungDatabase.php";
$masterAmbilSemua = $_SESSION["masterAmbilSemua"]; $idShoutOut = $_POST["idShoutOut"];
$sql = mysql_query("DELETE FROM tgsakhir.shoutout WHERE tgsakhir.shoutout.id_shoutout=$idShoutOut");