SOLUSI
TYPE
SOAL - B
1.
Asumsi:
Ada form web untuk mencari data siswa. Bentuk
tampilan form tersebut sebagai berikut :

Soal : [score: 25]
Terlihat form ini ditampilkan dengan tag table
HTML dengan border=1. Form ini
menggunakan method POST dan data form dikirim ke soal1.php. Pada header form
ini terdapat tulisan ”CARI DATA TESTING MOTOR” dengan background hitam dan
warna text putih dengan text rata tengah. Pilihan Merk terdiri dari SupraX,
Tiger, MegraPro, dan SupraFit. Sedangkan input jarak testing terdiri dari jarak
dari dan sampai dengan, dimana masing-masing memiliki ukuran size 10. Untuk
pilihan kota berupa checkbox seperti terlihat diatas.
Coba buat HTML form ini dengan validasi input dengan menggunakan
javascript, yaitu input jarak tidak boleh kosong ! (HTML dan JavaScript)
Bonus: [score: 3]
Tambahkan form ini dengan validasi input jarak
harus berupa digit dengan menggunakan javascript !
Solusi :
CARI DATA TESTING MOTOR
Merk:
Jarak
Testing:
dari
s/d
Kota Testing:
Solo
Semarang
Yogya
2.
Asumsi:
Di PC server localhost
terdapat database MySQL serta terdapat database MESIN dan didalamnya
terdapat table TESTMOTOR. Struktur table TESTMOTOR sebagai berikut :
TESTMOTOR ->
MERK varchar (50),
-> KOTA varchar (30) ,
->
JARAK integer )
Table ini digunakan untuk menyimpan data test
jarak tempuh sepeda motor dalam kilometer oleh sebuah pabrik perakitan sepeda
motor yang dilakukan di setiap kota. Isi table TESTMOTOR sebagai berikut :
MERK
|
KOTA
|
JARAK
|
SupraX
|
Solo
|
20
|
Tiger
|
Solo
|
25
|
SupraX
|
Solo
|
15
|
MegaPro
|
Solo
|
5
|
SupraFit
|
Semarang
|
25
|
SupraX
|
Yogya
|
15
|
Tiger
|
Semarang
|
35
|
SupraFit
|
Yogya
|
8
|
Anda bisa
menggunakan bantuan PHPmyadmin untuk
mengerjakan soal ini !
Soal : [score: 25]
Tulislah semua
jawaban berikut dalam bentuk bahasa SQL yang digunakan di MySQL !
a.
Coba tulis SQL untuk melakukan update penambahan data jarak
tempuh test sepeda motor ke dalam table TESTMOTOR yang dilakukan di kota Solo untuk merk
sepeda morot SupraX dan Tiger dimana masing-masing jarak tempuh ditambah 5
kilometer !
Solusi :
Update
TESTMOTOR set JARAK = JARAK + 5 where KOTA
= 'Solo' and (MERK = 'SupraX' or MERK = 'Tiger')
b.
Coba tulis SQL untuk menampilkan sepeda motor merk apa
saja yang sudah di test di kota Solo atau Yogya, hasilnya ditampilkan dalam
bentuk 1 kolom saja dan tidak boleh berulang serta ditampilkan secara berurut !
Solusi :
Select distinct
MERK from TESTMOTOR where KOTA = 'Solo' or KOTA = 'Yogya' order by
MERK asc
c.
Jika ada test jarak tempuh sepeda motor merk MegaPro
yang jarak tempuhnya dibawah 10 kilometer, maka data ini harus dihapus. Coba
buat SQL untuk menghapusnya !
Solusi :
Delete from
TESTMOTOR where MERK = 'MegaPro' and JARAK < 10
d.
Coba buat SQL untuk menghitung total jarak tempuh yang
dilakukan dalam test sepeda motor merk SupraX !
Solusi :
Select sum(JARAK)
as TOTAL from TESTMOTOR where MERK = 'SupraX'
e.
Coba tulis SQL untuk menampilkan total jarak tempuh
yang dilakukan dalam test sepeda motor untuk per kota
dengan format kolom : MERK, KOTA, TOTAL JARAK,
dengan diurutkan berdasarkan merk, kota,
dan total jarak !
Solusi :
Select MERK, KOTA, sum(JARAK) as TOTAL from TESTMOTOR group by MERK, KOTA order by MERK, KOTA,
TOTAL asc
Bonus: [score: 3]
Coba buat SQL untuk menampilkan
merk sepeda motor yang total jarak tempuh dalam test sepeda motor ini diatas 50
kilometer !
Solusi :
Select MERK from
TESTMOTOR group by MERK having sum(JARAK) >= 50
3.
Asumsi:
Terdapat variable array $hoby yang menyatakan data list hoby. Lihat script soal3.php dibawah ini :

Soal : [score: 25]
Tampilkan array
tersebut dengan menggunakan PHP dalam format tampilan sebagai berikut :
DAFTAR HOBY
|
|
NO
|
HOBY
|
1
|
Sepakbola
|
2
|
…..
|
Kolom NO adalah bilangan nomor urut yang dimulai
dari angka 1.
Bonus: [score: 3]
Tampilkan untuk baris genap dan ganjil dengan
warna dasar yang beda, yaitu baris genap dengan warna hijau (#00FF00) dan baris
ganjil dengan warna biru (#0000FF). Misalkan bentuk tampilannya :
DAFTAR HOBY
|
|
NO
|
HOBY
|
1
|
Sepakbola
|
2
|
Lari
|
3
|
Renang
|
Solusi :
echo "";
echo "
";
echo " DAFTAR HOBY ";
echo "
";
echo "
";
echo " NO ";
echo " HOBY ";
echo "
";
$i = 1;
for ($i=0; $i
";
{
if (($i % 2) == 0)
{
echo "
";
}
else
{
echo "
";
}
echo " " .
($i+1) . "
echo " " .
$hoby[$i] . " ";
echo "
";
}
echo "
";
4.
Asumsi :
Asumsi sama dengan soal no. 2
Soal : [score: 25]
Buat
program dengan script PHP untuk menampilkan isi table TESTMOTOR dalam bentuk
tag table HTML dengan border=1, dimana
bentuk kolom tampilan sebagai berikut :
MERK
|
KOTA
|
JARAK
|
Dan data test
motor yang ditampilkan hanya untuk kota
tertentu, dimana mengikuti form berikut ini :

Tampilan :
![]() |
Contoh hasil tampilan !
MERK
|
KOTA
|
JARAK
|
SupraX
|
Solo
|
20
|
Tiger
|
Solo
|
25
|
Coba selesaikan solusi4.php !
Bonus: [score: 3]
Coba tambah satu kolom “NOMOR URUT” disebelah
paling kiri, yaitu dimulai dari 1,2,… dst. Formatnya sebagai berikut :
NO
|
MERK
|
KOTA
|
JARAK
|
1
|
SupraX
|
Solo
|
20
|
2
|
Tiger
|
Solo
|
25
|
Solusi :
$link =
mysql_connect("localhost", "root", "");
mysql_select_db("MESIN",
$link);
$query = "select MERK, KOTA, JARAK from TESTMOTOR where KOTA = ' " . $_POST["varKOTA"]
. " ' ";
$result = mysql_query($query,
$link);
?>
$i = 0;
while ($row =
mysql_fetch_array($result, MYSQL_ASSOC)) {
$i++;
echo
"
";
echo
"$i. ";
echo
"" . $row["MERK"] .
" ";
echo
"" . $row["KOTA"] . " ";
echo
"" . $row["JARAK"] .
" ";
echo
"
}
?>
Tidak ada komentar:
Posting Komentar