Professional Documents
Culture Documents
TAJUK
ANDA PILIH
ANGKA GILIRAN
TANDATANGAN
GURU
TARIKH
1
MOHD SABRI
MUHAMMAD BINBIN
IRFAN MANSOR
SHAHRUL NIZAM
060306101029
MOHD
ZAID BINSABRI BIN MANSOR
ABDUL RAHMAN
2
ISI KANDUNGAN
1.0 Menganalisis Masalah
1.1 Pernyataan Masalah………………………………………………………….05
1.2 Objektif……………………………………………………………………....05
1.3 Skop………………………………………………………………………….06
1.4 Kumpulan Sasaran…………………………………………………………...06
1.5 Menilai Sistem Sedia Ada…………………………………………………....07
1.6 Tempoh Projek……………………………………………………………….09
2.0 Mereka Bentuk Penyelesaian
2.1 Algoritma ………………………………………………...............................10
2.2 Gambar Rajah Perhubungan Entiti (ERD)…………………………………..11
2.3 Penormalan………………………………………………………………….12
2.4 Antara Muka Input/Output…………………………………………………..18
3.0 Melaksanakan Penyelesaian
3.1 Jadual...………………………………………………………………………23
3.2 Borang……………………………………………………………………….26
3.3 Query………………………………………………………………………...29
3.4 Laporan………………………………………………………………………31
3.5 Pengekodan…………………………………………………………………..34
4.0 Menguji Dan Menyah Ralat
4.1 Ralat Sintaks…………………………………………………………………47
4.2 Ralat Logik…………………………………………………………………..47
4.3 Ralat Masa Larian…………………...………………………………………47
5.0 Mendokumentasi
5.1 Laporan Setiap Fasa
6.0 Nilai
6.4 Manual Pengguna……………………………………………………………51
Rujukan
Lampiran
3
PENGHARGAAN
Bersyukur kehadrat Illahi kerana dengan limpah kurniaNya dapat juga saya
menyiapkan folio yang telah diusahakan selama ini yang bertajuk “Sistem Sokongan
Pemilihan” . Folio yang ini amat penting buat saya memandangkan perkara ini merupakan
sebahagian daripada kerja khusus subjek Sains Komputer.
Ribuan terima kasih saya ucapkan kepada individu penting yang banyak membantu
saya sepanjang saya menyiapkan projek folio saya ini. Pertama sekali kepada Guru Sains
Komputer SMK Damansara Damai 1, En. Mohd Sabri Bin Mansor dan En. Zaid Bin Abd
Rahman kerana telah banyak membantu serta membimbing saya semasa kerja kursus ini
dijalankan.
Seterusnya, saya juga ingin mengucapkan terima kasih kepada ibu bapa saya kerana
telah memberikan sokongan dan kata-kata semangat kepada saya sepanjang folio ini disiapkan.
Tidak lupa juga kepada rakan-rakan seperjuangan yang yang turut bersama-sama berhempas
pulas dalam menyempurnakan projek masing-masing. Bantuan kalian mengenai projek ini
amat saya hargai. Kalian juga sanggup meluangkan masa untuk memberikan saya maklumat
tentangnya tidak akan saya lupakan.
Akhir sekali, ucapan terima kasih diberi kepada pihak-pihak yang telah membantu saya
secara langsung atau tidak langsung sepanjang projek saya dijalankan.
4
1.0 MENGANALISIS MASALAH
1.1 Pernyataan Masalah
Pembelian sesuatu produk akan menjadi rumit apabila terdapat banyak
pilihan yang menarik ditawarkan kerana pembeli sukar untuk membuat
perbandingan harga kereta dengan kereta yang lain kerana sering dipengaruhi
oleh jurujual rakan, atau keinginan individu sendiri. Hal ini kerana kebiasaannya
jurujual akan menawarkan kereta keluaran baharu yang lebih murah serta
spesifikasi yang lebih tinggi dan ini menyebabkan pelanggan membeli kereta
tidak seperti yang dirancangkan. Selain itu, pilihan yang dibuat berkemungkinan
bukanlah pilihan terbaik berdasarkan kriteria yang diingini atau bersesuaian
dengan keperluan pembeli kerana pemilihan produk tidak mengikut cita rasa
pembeli.
Bagi mengatasi masalah yang dihadapi, satu aplikasi berasaskan web
untuk membantu pemilihan produk daripada yang dijana oleh sistem yang
sedia ada.
1.2 Objektif
5
1.3 Skop
Sistem ini merangkumi beberapa keupayaan , iaitu:-
i. Memerlukan pelanggan untuk mendaftar masuk ke dalam sistem sebelum
membuat pilihan kereta.
ii. Memaparkan harga dan spesifikasi kereta seperti jenama, harga dan
spefikasi kereta sahaja
i. Penjual kereta.
ii. Pembeli kereta.
6
1.5.2 Kelemahan
Beberapa kelemahan dapat dikenalpasti dalam sistem sedia ada.
Antaranya ialah:-
i. Sukar untuk mencari dan membandingkan pelbagai jenama
kereta kerana perlu melihat satu persatu kereta di kedai kereta.
ii. Sukar untuk menambah produk yang baharu kerana penjual perlu
mencetak semula risalah yang sedia ada.
iii. Mengambil masa yang lama untuk membandingkan spesifikasi
pada kereta kerana perlu pergi ke setiap kedai kereta.
1.5.3 Kelebihan
Sistem sedia ada juga mempunyai kelebihan tersendiri. Antaranya
Ialah :-
i. Dapat melihat kualiti produk yang dipilih dengan lebih jelas dan
teliti di kedai kereta.
ii. Dapat membuat pembelian dengan segera.
iii. Boleh bertanya kepada penjual dengan secara terperinci jika ingin
mengetahui maklumat kereta yang ingin dibeli.
1.5.4 Justifikasi
Setelah meniliti kekurangan dan kelebihan yang terdapat pada sistem
perbandingan kereta secara manual.Sebuah kesimpulan boleh
dilakukan bahawa :-
i. Membantu pembeli untuk membuat pemilihan kereta dengan
lebih cepat dan secara atas talian.
ii. Membantu pembeli membuat perbandingan kereta tanpa perlu
ke kedai secara fizikal.
iii. Membantu penjual untuk memaksimumkan waktu perniagaan
dan menyenangkan untuk menambah dan mengemaskini
produk.
7
1.5.5 Nama Sistem
Nama sistem yang dibangunkan ini ialah “FindMyCar.com
8
1.6 Tempoh Projek
Fasa 1 dan Fasa 2 (September hingga November 2022)
2022
Tempoh Projek
Ogos September Oktober November Disember
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Taklimat daripada guru
1.0 MENGANALISIS MASALAH
1.1 Pernyataan Masalah
1.2 Objektif
1.3 Skop
1.4 Kumpulan Sasaran
1.5 Menilai Sistem Sedia Ada
1.6 Tempoh Projek
2.0 MEREKABENTUK PENYELESAIAN
2.1 Algoritma
2.2 Gambar Rajah Perhubungan Entiti (ERD)
2.3 Penormalan
2.4 Antara Muka Input/ Output
9
Fasa 3-5 (Januari hingga Jun 2023)
2023
Tempoh Projek
Januari Februari Mac April Mei Jun
3.0 MELAKSANAKAN PENYELESAIAN 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
3.1 Jadual
3.2 Borang
3.3 Query
3.4 Laporan
3.5 Mengekod
4.0 MENGUJI DAN MENYAH RALAT
4.1 Menyediakan Set Data Uji Lari Yang Relevan
4.2 Menghasilkan Atur Cara Bebas Ralat
5.0 MENDOKUMENTASI
5.1 Menulis Dokumentasi Dalaman (komen)
Menggunakan Gaya Penulisan Yang Baik
5.2 Menghasilkan Pelaporan Mengikut Format
Dokumen
5.3 Menghasilkan Pelaporan Mengikut Format
Kandungan
10
2.0 MEREKA BENTUK PENYELESAIAN
2.1 Algoritma
Mula
Ya
Pilih Ya
Output “Produk”
“Produk”
?
Klik Ya Output
maklumat maklumat
Tidak
?
Tidak
Ya
Tidak
Kembali? Log
Tidak keluar?
Ya Ya
11
2.2 Gambar Rajah Perhubungan Entiti (ERD)
idbandingan harga
gambar
katalaluan idpembeli
namaproduk
1 M M 1
PEMBELI BANDING PRODUK
M
namapembeli idproduk
keterangan
mengurus
idpenjual
1
PENJUAL
namapenjua
l
katalaluan
12
2.3 PENORMALAN
2.3.1 Unnormalized Form (0NF)
idpembeli namapembeli katalaluan idproduk namaprodu keterangan gambar harga idpenjual namapenjual katalaluan
k
1 CAR1 Messi 123 C001 Myvi 1.5L 1496 cc, 4 C001.png RM50 900.00 P01 Irfan 124
cylinder Myvi
1.5L 102 hp of
power 137 Nm
torque.
2 CAR2 Ronaldo 123 C002 Alza Perodua Alza 2022 C002.png RM75 500.00 P02 Nafri 124
MPV
kerb weight 1145
Kg
3 CAR3 Neymar 123 C003 Bugatti 8.0-liter 16-cylinder C003.png RM1000.000.0 P03 Ali 124
powerplant. 60 0
mph 2.3 seconds,
top speed 261 mph.
4 CAR4 Haaland 123 C004 Alphard 3.5L V6 Engine100 C004.png RM 460 000.00 P04 Baba 124
km/h (0–62 mph)
13
2.3.2 First Normal Form (1NF)
BANDING
idbandingan idpembeli namapembeli katalaluan idproduk namaprodu keterangan gambar harga idpenjual namapenjual katalaluan
k
1 CAR1 Messi 123 C001 Myvi 1.5L 1496 cc, 4 C001.png RM50 900.00 P01 Irfan 124
cylinder Myvi
1.5L 102 hp of
power 137 Nm
torque.
2 CAR2 Ronaldo 123 C002 Alza Perodua Alza 2022 C002.png RM75 500.00 P02 Nafri 124
MPV
kerb weight 1145
Kg
3 CAR3 Neymar 123 C003 Bugatti 8.0-liter 16-cylinder C003.png RM1000.000.0 P03 Ali 124
powerplant. 60 0
mph 2.3 seconds,
top speed 261 mph.
4 CAR4 Haaland 123 C004 Alphard 3.5L V6 Engine100 C004.png RM 460 000.00 P04 Baba 124
km/h (0–62 mph)
14
JUSTIFIKASI
Pada peringkat 1NF, semua atribut dan lajur adalah atomik dan jadual Banding mempunyai kunci primer iaitu IDBandingan. Namun masih lagi
terdapat kebergantungan fungsi separa.
IDPembeli, NamaPembeli, Password, Jantina, IDProduk, NamaProduk, Spesifikasi, GambarProduk, HargaProduk, IDPenjual , NamaPenjual,
Password bergantung fungsi separa kepada IDBandingan.
SKEMA HUBUNGAN
Banding (IDBandingan<KP>, IDPembeli, NamaPembeli, Password, Jantina, IDProduk, NamaProduk, Spefikasi, GambarProduk,
HargaProduk, IDPenjual , NamaPenjual, Password)
15
2.3.3 Second Normal Form (2NF)
BANDING
idbandingan idpembeli namapembeli katalaluan idproduk namaprodu keterangan gambar harga idpenjual namapenjual katalaluan
k
1 CAR1 Messi 123 C001 Myvi 1.5L 1496 cc, 4 C001.png RM50 900.00 P01 Irfan 124
cylinder Myvi
1.5L 102 hp of
power 137 Nm
torque.
2 CAR2 Ronaldo 123 C002 Alza Perodua Alza 2022 C002.png RM75 500.00 P02 Nafri 124
MPV
kerb weight 1145
Kg
3 CAR3 Neymar 123 C003 Bugatti 8.0-liter 16-cylinder C003.png RM1000.000.0 P03 Ali 124
powerplant. 60 0
mph 2.3 seconds,
top speed 261 mph.
4 CAR4 Haaland 123 C004 Alphard 3.5L V6 Engine100 C004.png RM 460 000.00 P04 Baba 124
km/h (0–62 mph)
16
JUSTIFIKASI
Jadual Banding mempunyai satu atribut kunci sahaja iaitu IDBandingan. Ini bermaksud jadual tersebut tidak mempunyai kebergantungan
fungsi separa dan jadual tidak perlu dipecahkan. Bentuk skema hubungan 2NF adalah sama dengan 1NF kerana jadual tidak dipecahkan.
SKEMA HUBUNGAN
Banding (IDBandingan<KP>, IDPembeli, NamaPembeli, Password, Jantina, IDProduk, NamaProduk, Spefikasi, GambarProduk,
HargaProduk, IDPenjual , NamaPenjual, Password)
17
2.3.4 Third Normal Form (3NF)
BANDING
18
PENJUAL
idpenjual namapenjual katalaluan
P01 Irfan 124
PEMBELI
idpembeli namapembeli katalaluan
CAR1 Messi 123
CAR2 Ronaldo 123
CAR3 Neymar 123
CAR4 Haaland 123
19
PRODUK
20
JUSTIFIKASI:
Pada peringkat 3NF semua jadual perlu berada 2NF. Kebergantungan fungsi transitif dihapuskan dengan cara memecahkan jadual bandingan
kepada empat iaitu jadual Banding, jadual Pembeli , jadual Produk dan jadual Penjual. Jadual-jadual ini dihubungkan dengan kunci asing iaitu
idpembeli, idproduk dan idpenjual.
Kesemua atribut bukan kunci pada setiap jadual berada dalam kebergantungan fugsi sepenuh.
SKEMA HUBUNGAN
Banding (IDBandingan<KP>, IDPembeli, <KA>, IDProduk<KA>)
Pembeli (IDPembeli<KP>, NamaPembeli, Password)
Produk (IDProduk<KP>, NamaProduk, Spefikasi, GambarProduk, HargaProduk, IDPenjual <KA>)
Penjual (IDPenjual<KP>,Nama Penjual, Password)
21
2.4 Antara Muka Input dan Output
SWITCHBOARD
22
LAKARAN BORANG
ID Pembeli: ID Pembeli:
TAMBAH TAMBAH
23
2.4.2 SIGNUP
SIGNUP
ID Pembeli:
Nama Pembeli:
Kata Laluan:
SIGNUP CANCEL
Borang Signup
24
2.4.3 PEMBELI
2.4.3.1 HOME
25
2.4.3.2 PRODUK
IMEJ IMEJ
IMEJ
KERETA 2 KERETA 3
KERETA 1
IMEJ
KERETA 4
SPESIFIKASI KERETA
MAKLUMAT BANDING
26
2.4.3.3 BANDING
27
2.4.4 PENJUAL
2.4.4.1 HOME
28
2.4.4.3 PENJUAL
29
2.4.4.3 PEMBELI
30
2.4.4.4 PRODUK
31
2.4.4.5 IMPORT
IMPORT
Jadual:
IMPORT
32
3.0 MELAKSANAKAN PENYELESAIAN
3.1 Jadual
3.1.1 Jadual Penjual
33
3.1.3 Jadual Produk
34
3.1.5 Jadual Relation
35
3.2 Borang
3.2.1 Antara muka Tambah Pembeli
<?php
//memanggil fail sambungan
include("keselamatan.php");
include("sambungan.php");
3.2.2 Kod Aturcara Borang Tambah Pembeli
include("penjual_menu.php");
}
?>
36
</tr>
<tr>
<td class="warna">Jantina</td>
<td><input type="text" name="jantina" placeholder="cth: perempuan"></td>
</tr>
</table>
<button class="tambah" type="submit" name="submit">Tambah</button>
</form>form>
<br>
<center>
<button class="biru" onclick="tukar_warna(0)">Biru</button>
<button class="hijau" onclick="tukar_warna(1)">Hijau</button>
<button class="merah" onclick="tukar_warna(2)">Merah</button>
<button class="hitam" onclick="tukar_warna(3)">Hitam</button>
</center>
<script>
function tukar_warna(n) {
var warna = ["Blue", "Green", "Red", "Black"];
var teks = document.getElementsByClassName("warna");
for(var i=0; i<teks.length; i++)
teks[i].style.color=warna[n];
}
</script>
37
3.3 Query
3.3.1 Antara Muka Carian Harga Produk
38
3.3.2 Kod Atur Carian Harga Maksima
<?php
include("keselamatan.php");
include("sambungan.php");
include("pembeli_menu.php");
$idpembeli = $_SESSION["idpengguna"];
?>
<div class="carian">
<form class="carian" action="pembeli_produk.php" method="post">
<label>Harga Maksima<input class="carian" type="text" name="maksima"></label>
<label>Jenama<input class="carian" type="text" name="jenama"></label>
<button class="cari" type="submit" name="submit">Cari</button>
</form>
</div>
<table class="produk">
<?php
$syarat =
"";
$tajuk = "SEMUA JENAMA";
if (isset($_POST["submit"]))
{
$jenama = $_POST["jenama"];
$maksima = $_POST["maksima"];
if ($jenama != NULL && $maksima == NULL)
{
$tajuk = "JENAMA $jenama";
$syarat = "where namaproduk like '%$jenama%'
";
}
else if ($jenama == NULL && $maksima != NULL)
{
$tajuk = "HARGA <= $maksima";
$syarat = "where harga <= $maksima";
}
else if ($jenama != NULL && $maksima != NULL)
{
$tajuk = "JENAMA $jenama DAN HARGA <= $maksima";
$syarat = "where namaproduk like '%$jenama%' and harga <= $maksima";
}
}
echo "<caption>SENARAI PRODUK $tajuk</caption>";
$bilangan = $bilangan + 1;
if ($bilangan % 3 == 0)
{
echo "</tr>";
}
}
?>
</table>
<center><button class="cetak" onclick="window.print()">Cetak</button></center>
40
3.4 Laporan
3.4.1 Antara Muka Senarai Produk Mengikut Harga
41
3.4.2 Kod Arahan Antara Muka Senarai Produk Mengikut Harga
<?php
include("keselamatan.php");
include("sambungan.php");
include("penjual_menu.php");
?>
<div class="carian">
<form class="carian" action="produk_senarai.php" method="post">
<label>Harga Maksima<input class="carian" type="text" name="maksima"></label>
<label>Jenama<input class="carian" type="text" name="jenama"></label>
<button class="cari" type="submit" name="submit">Cari</button>
</form>
</div>
<table>
<tr>
<th>ID</th>
<th>Nama</th>
<th>Gambar</th>
<th>Keterangan</th>
<th>Harga</th>
<th colspan="3">Tindakan</th>
</tr>
<?php
$syarat = "";
$tajuk = "SEMUA KERETA";
if (isset($_POST["submit"]))
{
$jenama = $_POST["jenama"];
$maksima = $_POST["maksima"];
if ($jenama != NULL && $maksima == NULL)
{
$tajuk = "JENAMA $jenama";
$syarat = "where namaproduk like '%$jenama%'";
}
else if ($jenama == NULL && $maksima != NULL)
{
$tajuk = "HARGA <= $maksima";
$syarat = "where harga <= $maksima";
}
else if ($jenama != NULL && $maksima != NULL)
{
$tajuk = "JENAMA $jenama DAN HARGA <= $maksima";
$syarat = "where namaproduk like '%$jenama%' and harga <= $maksima";
}
}
?>
42
while($produk = mysqli_fetch_array($result))
{
$idproduk = $produk["idproduk"];
echo "<tr> <td>$produk[idproduk]</td>
<td>$produk[keterangan]</td>
<td><img width= 100 src= 'imej/$produk[gambar]'></td>
<td>$produk[keterangan]</td>
<td>RM $produk[harga]</td>
<td>
<a href='produk_update.php?idproduk=$idproduk' title='update'>
<img src='imej/update.png'>
</a>
</td>
<td>
<a href='javascript:padam(\"$idproduk\");' title='delete'>
<img src='imej/delete.png'>
</a>
</td>
<td>
<a href='produk_maklumat.php?idproduk=$idproduk' title='maklumat'>
<img src='imej/info2.png'>
</a>
</td>
</tr>";
}
?>
</table>
<center><button class="cetak" onclick="window.print()">Cetak</button></center>
<script>
function padam(id) {
if (confirm("Adakah anda ingin padam") == true) {
window.location = "produk_delete.php?idproduk=" + id;
}
}
</script>
43
3.5 Mengekod
3.5.1 Antara Muka Signup
44
3.5.2 Kod Arahan Signup
<?php
include("sambungan.php");
if(isset($_POST["submit"]))
{
$idpembeli = $_POST["idpembeli"];
$password = $_POST["password"];
$namapembeli = $_POST["namapembeli"];
<body>
<center><br>
<img src="imej/tajuk.png">
</center>
45
3.5.3 Antara Muka Login
46
3.5.4 Kod Arahan Login
<?php
session_start();
include ("sambungan.php");
if (isset($_POST["submit"])) {
$userid = $_POST["userid"];
$password = $_POST["password"];
$jumpa = FALSE;
if ($jumpa == FALSE) {
$sql = "SELECT * FROM pembeli";
$result = mysqli_query($sambungan, $sql);
while($pembeli = mysqli_fetch_array($result)) {
if ($pembeli["idpembeli"] == $userid && $pembeli["password"] == $password) {
$jumpa = TRUE;
$_SESSION["idpengguna"] = $pembeli["idpembeli"];
$_SESSION["nama"] = $pembeli["namapembeli"];
$_SESSION["status"] = "pembeli";
break;
}
}
}
if ($jumpa == FALSE) {
$sql = "SELECT * FROM penjual";
$result = mysqli_query($sambungan, $sql);
while($penjual = mysqli_fetch_array($result)) {
if ($penjual["idpenjual"] == $userid && $penjual["password"] == $password) {
$jumpa = TRUE;
$_SESSION["idpengguna"] = $penjual["idpenjual"];
$_SESSION["nama"] = $penjual["namapenjual"];
$_SESSION["status"] = "penjual";
break;
}
}
}
if ($jumpa == TRUE)
if ($_SESSION["status"] == "pembeli")
header("Location: pembeli_home.php");
else if ($_SESSION["status"] == "penjual")
header("Location: penjual_home.php");
else
echo "window.location='index.php'";
echo "<script>alert('kesalahan pada username atau password');</script>";
}
?>
48
3.5.5 Antara Muka Import
49
50
3.5.6 Kod Arahan Import
<?php
include("keselamatan.php");
include("sambungan.php");
include("penjual_menu.php");
if (isset($_POST["submit"]))
{
$namajadual = $_POST["namajadual"];
$namafail = $_FILES["namafail"]["name"];
$sementara = $_FILES["namafail"]["tmp_name"];
move_uploaded_file($sementara, $namafail);
while (!feof($fail))
{
$medan = explode(",", fgets($fail));
$berjaya = false;
if ($berjaya == true)
echo "<script>alert('Rekod berjaya di import');</script>";
else
echo "<script>alert('Rekod tidak berjaya di import');</script>";
mysqli_close($sambungan);
}
?>
mysqli_close($sambungan);
}
?>
52
3.5.7 Antara Muka Kotak Popup
mysqli_close($sambungan);
53
3.5.9 Query yang berfungsi
54
3.5.9.2 Kod Atur cara Antara Muka Pilihan Jenis Laporan
<?php
include("keselamatan.php");
include("sambungan.php");
include("penjual_menu.php");
?>
<div class="carian">
<form class="carian" action="produk_senarai.php" method="post">
<label>Harga Maksima<input class="carian" type="text" name="maksima"></label>
<label>Jenama<input class="carian" type="text" name="jenama"></label>
<button class="cari" type="submit" name="submit">Cari</button>
</form>
</div>
<table>
<tr>
<th>ID</th>
<th>Nama</th>
<th>Gambar</th>
<th>Keterangan</th>
<th>Harga</th>
<th colspan="3">Tindakan</th>
</tr>
<?php
$syarat = "";
$tajuk = "SEMUA KERETA";
if (isset($_POST["submit"]))
{
$jenama = $_POST["jenama"];
$maksima = $_POST["maksima"];
if ($jenama != NULL && $maksima == NULL)
{
$tajuk = "JENAMA $jenama";
$syarat = "where namaproduk like '%$jenama%'";
}
else if ($jenama == NULL && $maksima != NULL)
{
$tajuk = "HARGA <= $maksima";
$syarat = "where harga <= $maksima";
}
else if ($jenama != NULL && $maksima != NULL)
{
$tajuk = "JENAMA $jenama DAN HARGA <= $maksima";
$syarat = "where namaproduk like '%$jenama%' and harga <= $maksima";
}
}
<script>
function padam(id) {
if (confirm("Adakah anda ingin padam") == true) {
window.location = "produk_delete.php?idproduk=" + id;
}
}
</script>
56
3.5.10 Antara Muka Cetak
57
4.0 MENGUJI DAN MENYAHRALAT
4.1 Ralat sintaks
Perakuan calon: Tiada ralat sintaks berlaku.
58
5.0 MENDOKUMENTASI
5.1 Laporan setiap fasa
}
}
if ($jumpa == TRUE)
<?php if ($_SESSION["status"] == "pembeli")
session_start();
header("Location: pembeli_home.php");
else if ($_SESSION["status"] == "penjual")
//sambunganheader("Location:
kepada database penjual_home.php");
include
else("sambungan.php");
echo "<script>
//mengambil data POST
alert('kesalahan pada username atau password');</
if (isset($_POST["submit"])) {
window.location='index.php';
$userid </script>";
= $_POST["userid"];
} $password = $_POST["password"];
?>
$jumpa = FALSE;
if ($jumpa ==href="abutton.css">
<link rel="stylesheet" FALSE) {
//arahan SQL
<link rel="stylesheet" untuk mencari data dari jadual pembeli
href="aborang.css">
$sql = "SELECT * FROM pembeli";
<center>
//melaksanakan
<img class="tajuk" proses carian width=500>
src="imej/tajuk.png"
</center> $result = mysqli_query($sambungan, $sql);
//login berjaya
while($penjual = mysqli_fetch_array($result)) {
if ($penjual["IDPenjual"] == $userid && $penjual["Password"] == $password) {
$jumpa = TRUE;
$_SESSION["idpengguna"] = $penjual["IDPenjual"];
$_SESSION["Nama"] = $penjual["NamaPenjual"];
$_SESSION["status"] = "penjual";
$_SESSION_["Jantina"] = "Jantina";
break;
}
59
6.0 Nilai
6.4 Manual Pengguna
1. Masukkan idpengguna dan password di ruangan yang disediakan. Jika semua telah
dimasukkan, klik butang login.
60
2. Cara Untuk Mendaftar Pengguna Baharu
*Pop up message berjaya signup akan keluar jika anda berjaya mendaftar.
61
3. Cara Login Untuk Pembeli
62
4. Cara Menyemak Produk
1.Sila klik butang produk kemudian klik butang maklumat.
63
5.Cara Membanding Produk
2. Satu kotak popup akan keluar jika produk telah dimasukkan ke dalam senarai
bandingan.
64
3. Proses banding hanya membenarkan 3 produk sahaja untuk dibuat perbandingan pada
satu masa dan pengguna mestilah padam item/ produk jika ingin membuat
perbandingan dengan produk yang lain.
65
6.Cara Login Untuk Penjual
66
7. Cara Menambah Penjual
3. Masukkan ID Penjual
4. Masukkan Nama Penjual
5. Masukkan Password
6. Klik butang Tambah
7. Perkataan “Berjaya Tambah” akan muncul jika maklumat berjaya ditambah.
67
68
8. Cara Memaparkan Senarai Penjual
69
3. Senarai nama penjual akan dipaparkan.
4. Klik pada ikon update di lajur tindakan.
5. Tukarkan maklumat yang hendak diubah.
70
1. Satu kotak popup akan muncul
2. Klik Ok untuk padam data
3. Data berjaya dipadam.
71
3. Masukkan ID Pembeli
4. Masukkan Nama Pembeli
5. Masukkan Password
6. Klik butang Tambah
7. Perkataan “Berjaya Tambah” akan muncul jika maklumat berjaya ditambah.
72
12. Cara Memaparkan Senarai Pembeli
74
14. Cara Memadam Maklumat Pembeli
75
15. Cara Menambah Produk
3. Masukkan ID Produk.
4. Masukkan Nama Produk.
5. Pilih dan masukkan Gambar.
6. Masukkan Harga.
7. Masukkan Spesifikasi.
76
8. Pilih nama penjual.
9. Klik butang Tambah.
10. Perkataan “Berjaya tambah” akan muncul jika maklumat berjaya ditambah.
77
17. Cara mengemaskini maklumat produk
78
1. Klik pada butang produk.
2. Klik pada butang senarai.
3. Senarai produk akan dipaparkan.
4. Klik pada ikon update di lajur tindakan.
5. Tukarkan maklumat yang hendak diubah.
79
18. Cara Memadam Produk
80
19. Cara Import Pembeli/ Penjual
81
4. Setelah fail dipilih, sila klik open dan klik import.
5. Jika fail berjaya dimuatnaik, satu popup “Rekod berjaya diimport” akan dipaparkan.
82
MUHAMMAD IRFAN BIN SHAHRUL NIZAM
060306101029
Sistem pembelian FindMyCar.com dibina oleh saya sendiri dan idea dimunculkan oleh
saya pada tahap pelaksanaan projek tersebut .
Sistem tersebut mempunyai nilai komersial seperti paparan , carian dan padam .
Sistem pembelian FindMyCar.com ini mesra pengguna dan telah menpati kehendak
pengguna seperti fungsi mengubah saiz tulisan .
Sistem pembelian FindMyCar.com ini dapat berfungsi dengan sepenuhnya dan baik
dalam persekitaran rangkaian secara konsisten .
(192.168.1.40/kedaiirfan)
• Saya rajin menyiapkan setiap bahagian yang ada dalam sistem tersebut .
• Saya selalu mendengar arahan yang disampaikan oleh guru Sains Kompuer saya
semasa menyiapkan tugasan tersebut .
Tandatangan Calon:
83
Rujukan
Buku
- Ismail Bin Shaari, 2021. Score A+ Tingkatan 5 Edisi 5 Projek Sains Komputer
Pertandingan Secara Langkah Demi Langkah. Ipoh, Perak: ICT ScoreAPlus
- Norlini binti Ramli, Paridah binti Daud, Noor Azma binti Ismail, Noor Lees binti Ismail,
Abd.Halim bin Bohadean @ Bohari, 2017. Buku Teks Sains Komputer Tingkatan 5 KSSM,
Shah Alam, Selangor: OxfordFajar Sdn.Bhd
Laman Web
- https://www.youtube.com/watch?v=b-voFZL2OlM&list=PL3LqcdHbeC-
DR8TbVFVt2ZLa1Bd2fhutr
- https://www.ictscoreaplus.com/warna.html
- https://www.ictscoreaplus.com/semak
- https://pixabay.com/illustrations/flower-white-pattern-floral-5239814/
- https://cooltext.com/
- https://iconarchive.com/
- https://id.scribd.com/doc/168877657/Borang-Penyertaan-Poster-IPGKPP
84
Lampiran
85
86