LAPORAN PRAKTIKUM
BENGKEL WEB 2 (PHP)
MODUL 5 – MODUL 8
OKTA RIVERANDA
1257301042
Modul 5. Baca File, Upload (Unggah) File, Cookies dan
Session
1. Membaca File
Script Penjelasan
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
$file = fopen("halo.txt", "r") or exit("Unable to open file!");
while(!feof($file)){
echo fgets($file)."<br />";
}
fclose($file);
$file = fopen("halo.txt", "r")or exit("Unable to open file!");
while(!feof($file)){
echo fgetc($file)."<br />";
}
fclose($file);
?>
Terdapat sebuah fungsi didalam
PHP yang memungkinkan untuk
mengolah file, yang dalam hal ini
adalah file berekstensi .txt .
fopen(“halo.txt”, “r”) : membuka file
dengan nama halo.txt .
Fungsi feof() : mengecek akhir dari file.
Fungsi fgets() : membaca file per baris.
Fungsi fgetc() : membaca file per
karakter
Output
2. Form Upload File
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
?>
<html>
<head>
<title>Upload File</title>
</head>
<body>
<form action="Modul_5_UploadTampil.php" method="post" enctype="multipart/form-
data">
<center>
File Name : <input type="file" name="file" id="file"><br />
<input type="submit" value="SEND">
</center>
</form>
</body>
</html>
Penjelasan
Program di atas merupakan program yang digunakan untuk membuat tampilan fisik inputan dari
penguploadan file.
Output
3. Tampil Hasil Upload
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
if($_FILES['file']['error'] > 0){
echo "Error : ".$_FILES['file']['error']."<br />";
}else{
$uploadFolder = 'uploaded/';
$namaFile = $_FILES['file']['name'];
$tmp = $_FILES['file']['tmp_name'];
echo "Upload : ".$namaFile."<br />";
echo "Type : ".$_FILES['file']['type']."<br />";
echo "Size : ".($_FILES['file']['size'] / 1024)."kB <br />";
echo "Stored in : ".$uploadFolder."/".$namaFile;
move_uploaded_file($tmp, "$uploadFolder/$namaFile");
}
?>
Penjelasan
Baris 7 : Pengondisian apabila terdapat error sesaat setelah menginputkan file.
Baris 9 – 19 : Merupakan kondisi apabila file yang diinputkan benar.
Baris 10 : Adalah variabel yang merujuk kepada nama folder tempat menyimpan file tersebut.
Baris 11 : Variabel yang merujuk kepada nama file yang diupload.
Baris 13 : Tempat penyimpanan sementara.
Baris 14 : Menampilkan nama file yang sudah tersimpan ke dalam server.
Baris 15 : Menampilkan tipe file yang diupload.
Baris 16 : Menampilkan ukuran file dalam ukuran kilo Byte.
Baris 17 : Menampilkan lokasi penyimpanan file yang berada di server.
Baris 18 : Memindahkan file yang tadinya berada di tempat penyimpanan sementara ke tempai
penyimpanan server.
Output
File yang diupload bernama localhost.sql, telah disimpan ke dalam server.
4. Cookies
Script
<?php
//Nama : Okta Riveranda
//Kelas : 1 SI B
//NIM : 1257301042
setcookie("user", "Okta Riveranda", time()+3600);
setcookie("status", "Administrator",time()+3600);
?>
<html>
<head>
<title>Cookies</title>
</head>
<body>
<?php echo $_COOKIE['user']."<br />"; ?>
<?php print_r($_COOKIE); ?>
</body></html>
Penjelasan
Fungsi setcookie() merupakan fungsi built – in PHP yang digunakan untuk mengatur keaktifan user pada
saat sedang mengakses web. Fungsi time adalah memberikan batasan waktu atas keaktifan user.
Output
5. Session
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
session_start();
$_SESSION['name'] = "Okta Riveranda";
$_SESSION['band'] = "Senior Software Engineer";
?>
<html>
<head>
<title>Session</title>
</head>
<body>
<?php
echo "Nama : ".$_SESSION['name']."<br />";
echo "Band : ".$_SESSION['band']."<br />";
?>
<a href="Modul_5_Session2.php">Cek Session Aktif</a>
</body>
</html>
Penjelasan
Selain cookie, ada suatu fungsi built – in pada PHP yang memberikan manfaat sebagaiman
manfaat dari penggunaan cookie. Fungsi tersebut adalah session. Jika cookie memberikan batasan waktu
pada keaktifan user, maka session tidak memberikan itu. Session bekerja secara manual (tidak
menggunakan batasan waktu), sehingga akan ada banyak fungsi yang digunakan untuk mengaktifkan dan
menonaktifkan user.
Output
6. Session 2
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
session_start();
?>
<html>
<head>
<title>Session Aktif</title>
</head>
<body>
<h3>Apakah sessionnya masih aktif</h3>
<?php
echo "Nama : ".$_SESSION['name']."<br />";
echo "Band : ".$_SESSION['band']."<br />";
if(!empty($_SESSION['name'])){
echo "<h5>Oh, tidak error, berarti session masih aktif</h5>";
}else{
echo "<h5>Oh, error, berarti session telah dihapus !</h5>";
}
echo "<a href='Modul_5_Session3.php'>Hancurkan Session</a>";
?>
</body>
</html>
Penjelasan
Program di atas adalah program yang digunakan untuk mengecek keaktifan dari sebuah user..
Output
7. Session 3
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
session_start();
session_destroy();
unset($_SESSION['name']);
unset($_SESSION['band']);
?>
<html>
<head>
<title>Session Destroy</title>
</head>
<body>
<h3>Kalau error, berarti benar, session telah dihapus</h3>
<?php
echo "Nama : ".$_SESSION['name']."<br />";
echo "Band : ".$_SESSION['band']."<br />";
?>
<a href="Modul_5_Session.php">Buat session lagi, ah !</a>
</body>
</html>
Penjelasan
Program di atas adalah program yang digunakan untuk menghancurkan sesi dari user yang sedang aktif.
Output
8. Soal 2
Script
<?php
//Nama : Okta Riveranda
//NIM ; 1257301042
//Kelas : 1 SI B
$file = fopen("Modul_5_Soal1.txt", "r") or exit("Unable to read a file !");
while(!feof($file)){
echo fgets($file);
}
fclose($file);
?>
Penjelasan
Soal 2 adalah implementasi dari soal 1 yang ditujukan untuk membuat sebuah program yang akan
menampilkan apa apa yang sudah ditulis pada file Modul_5_Soal1.txt
Output
9. Soal 3A
Script
<?php
//Nama : Okta Riveranda
//NIM ; 1257301042
//Kelas : 1 SI B
?>
<html>
<head>
<title>Login Form</title>
</head>
<body>
<form action="Modul_5_Soal3B.php" method="post">
<table align="center">
<tr>
<td>
Username
</td>
<td>
: <input type="text" size="30" required name="name">
</td>
</tr>
<tr>
<td>
Password
</td>
<td>
: <input type="password" size="30" required
name="pass">
</td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="submit" value="LOGIN">
</td>
</tr>
</table>
</form>
</body>
</html>
Penjelasan
Sebuah program untuk menampilkan tampilan fisik dari form login.
Output
10. Soal 3B
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 Si B
session_start();
$user = $_POST['name'];
$pass = $_POST['pass'];
if(($user == "saya") && ($pass == "admin")){
$SESSION['name'] = $user;
$SESSION['name'] = $pass;
header('location:Modul_5_Soal3C.php');
}else{
include_once "Modul_5_Soal3A.php";
echo "<center><h3>Kesalahan username dan password</h3></center>";
}
?>
Penjelasan
Program yang berfungsi untuk menentukan apakah form yang diinputkan oleh user sesuai dengan
yang ditentukan oleh pemrogram. Apabila user lolos dalam penyeleksian tersebut maka, user akan
langsung dibawa ke halaman admin dengan menggunakan header.
Output
Output 2
Apabila terjadi kesalahan pada saat penginputan usernam dan password atau dengan kata lain,
inputan tidak sesuai dengan apa yang telah ditentukan pemrogram maka, akan muncul output seperti
berikut di bawah ini.
11. Soal 3C
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
session_start();
session_destroy();
?>
<html>
<head>
<title>Admin</title>
</head>
<body>
<center><h1>Welcome to admin page !</h1></center>
<center><h3><a href="Modul_5_Soal3A.php">Kembali Login</a></h3></center>
</body>
</html>
Penjelasan
Program di atas adalah apa yang akan ditampilkan apabila user dipersilakan masuk atau dengan
kata lain apa yang diinputkan sesuai dengan ketentuan pemrogram.
Output
Modul 6. Baca File, Upload (Unggah) File, Cookies dan
Session
1. Error
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
?>
<?php
function customError($errno, $errstr){
echo "<b>Error : </b>[$errno] $errstr";
}
set_error_handler("customError");
echo($test)."<br />";
print $_GET['id'];
$file = fopen("welcome.txt", "r");
?>
Penjelasan
Program di atas sudah sangat jelas terjadi kesalahan, disebabkan oleh tidak adanya
pendeklarasian variabel. Sehingga akan muncul pesan kesalahan “undefined” atau tidak terdefinisi.
Output
2. Error (modified)
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
?>
<?php
function customError($errno, $errstr){
echo "<b>Error : </b>[$errno] $errstr";
}
set_error_handler("customError");
echo($test)."<br />";
print $_GET['id'];
$file = fopen("welcome.txt", "r");
?>
Penjelasan
Untuk menanggulangi kesalahan tersebut maka diperlukan perubahan pada syntax yang ditulis.
Perubahan yang dilakukan bukan untuk menampilkan pernyataan yang benar, melainkan menampilkan
kesalahan agar tampa lebih rapi. Inilah yang disebut sebagai error handling. Bahasa PHP sudah
menyediakan fungsi built – in untuk itu.
Output
3. Filtering Integer
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
$int = 123;
if(!filter_var($int, FILTER_VALIDATE_INT)){
echo "Tidak valid ! Data tidak integer !";
}else{
echo "Valid ! Data integer !";
}
echo "<br />";
$var = 300;
$int_options = array("options"=>array("min_range"=>0, "max_range"=>256));
if(!filter_var($var, FILTER_VALIDATE_INT,$int_options)){
echo "data valid dan di dalam range";
}else{
echo "data tidak valid atau di luar range !";
}
?>
Penjelasan
Salah satu bentuk penanggulangan yang ada adalah, menanggulangi terjadinya kesalahan tipe
pada suatu variabel. Dalam kasus ini adalah tipe integer.
Ada 2 variabel yang akan diproses kebenarannya disini :
1. $int = 123. Variabel ini akan diuji apakah ia termasuk variabel bertipe integer atau tidak.
2. $var = 300. Variabel ini akan diuji apakah ia tidak berada di dalam antara bilangan 0 sampai 256.
Output
4. Filtering Email
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
if(!filter_has_var(INPUT_GET,"email")){
echo "Data email tidak ada";
}else{
if(!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL)){
echo "Email tidak valid !";
}else{
echo "Email valid <br />";
print $_GET['email'];
}
}
?>
Penjelasan
Selain memberikan fungsi validasi, PHP juga memberikan fungsi untuk memvalidasi apakah
suatu inputan termasuk tipe data email ataukah tidak.
Output
Output 2
Apabila terjadi kesalahan atau dengan kata lain, inputan tidak sesui dengan ketentuan atau format email,
maka akan tampil pesan berikut :
5. Soal 1
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
?>
<html>
<head>
<title>Form Input</title>
</head>
<body marginwidth="500">
<form action="Modul_6_Soal2.php" method="post">
<fieldset>
<table width="500" align="center">
<tr>
<td>Nama</td>
<td>: <input type="text" name="nama" size="30">
</tr>
<tr>
<td>NIM</td>
<td>: <input type="text" name="nim" size="30">
</tr>
<tr>
<td>Umur</td>
<td>: <input type="text" name="umur" size="30">
</tr>
<tr>
<td>Email</td>
<td>: <input type="text" name="email" size="30">
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="SEND">
</td>
</tr>
</table>
</fieldset>
</form>
</body>
</html>
Penjelasan
Program di atas adalah program yang digunakan untuk menampilkan form inputan yang nantinya
akan dikonfigurasi oleh file Modul_6_Soal2.php .
Output
6. Soal 2 (lanjutan)
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
$nama = $_POST['nama'];
$nim = $_POST['nim'];
$umur = $_POST['umur'];
$email = $_POST['email'];
$urut_pesan = 0;
$pesan;
$counter = 0;
function cekNama($name){
global $pesan;
global $counter;
if(filter_var($name, FILTER_VALIDATE_INT)){
$pesan[] = "Nama harus bertipe String !";
$counter++;
}
return $pesan;
}
function cekNim($nomor){
global $pesan;
global $counter;
if(!filter_var($nomor, FILTER_VALIDATE_INT)){
$pesan[] = "NIM harus bertipe integer !";
$counter++;
}
return $pesan;
}
function cekUmur($usia){
global $pesan;
global $counter;
if(!filter_var($usia, FILTER_VALIDATE_INT)){
$pesan[] = "Umur harus bertipe integer !";
$counter++;
}
return $pesan;
}
function cekEmail($imel){
global $pesan;
global $counter;
if(!filter_has_var(INPUT_POST,$imel)){
echo "Data email tidak ada";
}else{
if(!filter_input(INPUT_POST, $imel, FILTER_VALIDATE_EMAIL)){
echo "Email tidak valid !";
}else{
echo "Email valid <br />";
print $_POST['email'];
}
}
return $pesan;
}
cekNama($nama);
cekNim($nim);
cekUmur($umur);
cekEmail($email);
if($counter>0){
echo "<center>";
include_once "Modul_6_Soal1.php";
echo "Kesalahan inputan : <br />";
foreach ($pesan as $pesan_tampil) {
$urut_pesan++;
echo "<font color='#FF0000'>";
echo "$urut_pesan . $pesan_tampil <br>";
echo "</font>";
}
echo "</center>";
}else{
header('location:admin.php');
}
?>
Penjelasan
Program di atas adalah program yang bertujuan untuk memebrikan error handling pada program
soal nomor 1. Program ini akan memeriksa apakah inputan user tersebut sesuai dengan tipe data yang
diiinginkan sistem atau tidak. Jika ada kesalahan dalam penginputan, maka sistem akan memberikan
pesan kesalahan yang menunjukkan kesalahan dari inputan user.
1. Fungsi cekNama($name) : Adalah fungsi yang bertujuan untuk menampilkan kesalahan apabila
variabel nama bertipe int.
2. Fungsi cekNim($nomor) : Adalah fungsi yang bertujuan untuk memeriksa apakah inputan untuk
nim bertipe int atau tidak. Jika tidak, maka sistem akan menampilkan pesan kesalahan.
3. Fungsi cekUmur($usia) : Adalah fungsi yang bertujuan untuk memeriksa apakah inputan umur
bertipe int atau tidak.
4. Fungsi cekEmail($imel) : Adalah fungsi yang berfungsi untuk memvalidasi apakah inputan
bertipe email atau tidak.
Output
7. Soal nomor 3 (lanjutan)
Script
<?php
//Nama : Okta Riveranda
//NIM : 1257301042
//Kelas : 1 SI B
$nama = $_POST['nama'];
$nim = $_POST['nim'];
$umur = $_POST['umur'];
$email = $_POST['email'];
$urut_pesan = 0;
$pesan;
$counter = 0;
function cekNama($name){
global $pesan;
global $counter;
if(filter_var($name, FILTER_VALIDATE_INT)){
$pesan[] = "Nama harus bertipe String !";
$counter++;
}
return $pesan;
}
function cekNim($nomor){
global $pesan;
global $counter;
if(!filter_var($nomor, FILTER_VALIDATE_INT)){
$pesan[] = "NIM harus bertipe integer !";
$counter++;
}
return $pesan;
}
function cekUmur($usia){
global $pesan;
global $counter;
if(!filter_var($usia, FILTER_VALIDATE_INT)){
$pesan[] = "Umur harus bertipe integer !";
$counter++;
}
return $pesan;
}
function cekEmail($imel){
global $pesan;
global $counter;
if(!filter_has_var(INPUT_POST,$imel)){
echo "Data email tidak ada";
}else{
if(!filter_input(INPUT_POST, $imel, FILTER_VALIDATE_EMAIL)){
echo "Email tidak valid !";
}else{
echo "Email valid <br />";
print $_POST['email'];
}
}
return $pesan;
}
if(empty($nama)){
$pesan[] = "Data Nama Kosong !";
$counter++;
}if(empty($nim)){
$pesan[] = "Data NIM kosong !";
$counter++;
}if(empty($umur)){
$pesan[] = "Data umur Kosong !";
$counter++;
}if(empty($email)){
$pesan[] = "Data email kosong !";
$counter++;
}
cekNama($nama);
cekNim($nim);
cekUmur($umur);
cekEmail($email);
if($counter>0){
echo "<center>";
include_once "Modul_6_Soal1.php";
echo "Kesalahan inputan : <br />";
foreach ($pesan as $pesan_tampil) {
$urut_pesan++;
echo "<font color='#FF0000'>";
echo "$urut_pesan . $pesan_tampil <br>";
echo "</font>";
}
echo "</center>";
}else{
header('location:admin.php');
}
?>
Penjelasan
Syntax di atas adalah syntax tambahan dari error handler sebelumnya yang akan berfungsi
menampilkan error sesuaidengan error pada inputannya.
Output
Modul 7. PHP dan Database MySQL (1)
1. Membuat Database
Script
Syntax : mysql –u root [Enter]
Untuk mengakses mysql pada xampp server, maka kita harus masuk pada direktori
xamppmysqlbin dengan cara cd xamppmysqlbin. Kemudian login dengan mengetikkan syntax mysql
–u root. Pada syntax tersebut terdapat –u, ini adalah singkatan dari username jadi, kita menggunakan root
untuk mengakses database mysql.
Syntax : use bw2db [Enter].
Untuk membuat sebuah database bernama
BW2db pada mysql, gunakan syntax
CREATE DATABASE BW2db.
Kemudian, untuk menggunakan atau
untuk berada di posisi aktif pada suatu
database, gunakan syntax use BW2db.
Syntax :
1. Create table mahasiswa(
2. id int(20) NOT NULLAUTO_INCREMENT,
3. nama varchar(255) NOT NULL,
4. nim varchar(255),
5. kelas varchar(255),
6. username varchar(255),
7. password varchar(255),
8. PRIMARYKEY(id)
9. );
Syntax yang digunakan untuk membuat
suatu table yang bernama mahasiswa di
dalam database adalah create table
mahasiswa.
Di dalam tabel tersebut diisi oleh
beberapa field :
1. id : int (10 karakter),
2. nama : varchar (255 karakter),
3. nim : varchar (255 karakter),
4. kelas : varchar (255 karakter),
5. username : varchar (255
karakter),
6. password : varchar (255 karakter),
7. dan id sebagai PRIMARY KEY-
nya.
Untuk melihat apakah table tersebut telah
terbentuk atau belum, dapat digunakan
syntax show tables;
Syntax :
1. insert into mahasiswa
2. (nama, nim, kelas, username,password)
3. values
4. (‘Ujang 1’, ‘11234’, ‘1SIB’, ‘ujang’,
MD5(ujang00)),
5. (‘Badu 2’, ‘22234’, ‘1SIB’, ‘badu’, MD5(badu00)),
6. (‘Surono 3’, ‘33234’, ‘1SIB’, ‘surono’,
MD5(surono00)),
7. (‘Aibekop 4’, ‘44234’, ‘1SIB’, ‘aibekop’,
MD5(aibekop00));
Syntax yang digunakan untuk
menginputkan data secara manual adalah
insert into nama_table (field1, field2,
..field n) values (isi_field1, isi_field2,
isi_fieldn);
2. Membuat koneksi ke database
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Failed to connect to MySQL : ".mysqli_connect_error();
}else{
echo "Successfully connected !";
}
?>
Penjelasan
Program di atas adalah program yang digunakan untuk mengkoneksikan file PHP dengan DBMS
MySQL.
Output
3. Membuat Tabel Mata Kuliah
Script Penjelasan
Syntax:
1. create table matakuliah(
2. mk_id int(20) AUTO_INCREMENT,
3. mk_nama varchar(30),
4. mk_kode varchar(10),
5. mk_dosen varchar(50),
6. PRIMARYKEY(mk_id)
7. );
Membuat tabel matakuliah tang terdiri dari
4 field :
1. mk_id : int (20 karakter).
2. mk_nama : varchar(30 karakter).
3. mk_kode : varchar(10 karakter).
4. mk_dosen : varchar(50 karakter).
4. Menginput Data pada Tabel Mata Kuliah
Script
Syntax :
1. Insert into matakuliah
2. (mk_nama, mk_kode, mk_dosen)
3. Values
4. (‘Bengkel Web 2’, ‘V2314’, ‘Muhammad Ihsan Zul’),
5. (‘Basis Data’,‘V3524’, ‘Kartina Diah KW’),
6. (‘Computer Animation’, ‘V6573’, ‘Anggi Trinadoli’),
7. (‘Basis Data Lanjut’, ‘V5464’, ‘WawanYuwanto’)
8. ;
Penjelasan
Syntax di atas digunakan untuk menginputkan data pada tabel matakuliah yang telah dibuat
sebelumnya.
5. Menampilkan Tabel Mata Kuliah
Script
Syntax :
1. show tables;
2. select * from matakuliah;
Penjelasan
Syntax di atas digunakan untuk menampilkan tabel yang ada pada database yang sedang aktif
(pada saat ini adalah database bw2db).
Modul 8. PHP dan Database MySQL (2)
1. Update Tabel Mata Kuliah
Script
Syntax :
update matakuliah set mk_nama = ‘Animation’, ‘V3333’ WHERE mk_id = 3;
select * from matakuliah;
Penjelasan
Syntax di atas digunakan untuk mengupdate (mengubah) suat field yang bernama mk_nama, dan
mk_kode,yang mana mk_id = 3.
Format syntaxnya adalah update nama_tabel set field1 = ‘’, field2 = ‘’fieldn=’’where fieldx =
‘’;
2. Delete Tabel Mata Kuliah
Script
Penjelasan
Syntax di atas digunakan untuk menghapus suatu field pada tabel yang diinginkan. Pada contoh
program di atas,field yang akan dihapus adalah field yang memiliki mk_id = 4;
Format syntaxnya adalah delete from matakuliah where mk_id = 4;
3. Query Database BW2db
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal terhubung ke mySQL : ".mysqli_connect_error();
}
$query = mysqli_query($con, "select * from mahasiswa");
while($m = mysqli_fetch_array($query)){
echo "Nama : ".$m['nama']."<br />NIM : ".$m['nim']."<br />";
}
?>
Penjelasan
Program di atas program yang digunakan untuk :
1. Menghubungkan file PHP dengan tabel mahasiswa yang terdapat pada database bernama bw2db.
2. Menampilkan data tabel matakuliah dengan menggunakan looping dan array.
Output
4. Query Database BW2db 2
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal terhubung ke mySQL : ".mysqli_connect_error();
}
$query = mysqli_query($con, "select * from mahasiswa");
while($m = mysqli_fetch_object($query)){
echo "Nama : ".$m->nama."<br />NIM : ".$m->nim."<br />";
}
?>
Penjelasan
Program di atas merupakan suatu bentuk lain dari pengimplementasian dari program sebelumnya.
Jika sebelumnya, pemanggilan isi tabel masih bersifat prosedural, maka pada program ini pemanggilan isi
tabel bersifat OOP. Itu terdapat pada baris ke – 11. $m->nama dan $m->nim.
Output
5. Query Database BW2db 3
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal terhubung ke mySQL : ".mysqli_connect_error();
}
$query = mysqli_query($con, "select * from mahasiswa");
$total = mysqli_num_rows($query);
echo $total;
?>
Penjelasan
Untuk menampilkan banyak baris pada suatu tabel, maka digunakan fungsi PHP yang bernama
mysqli_num_rows($var);.
Output
6. Soal 1
Script
Syntax :
Delete from matakuliah where mk_id = 4;
select * from matakuliah;
Penjelasan
Menghapus field dengan mk_id = 4.
7. Soal 2
Script
Syntax :
Update mahasiswa set nama = ‘Okta Riveranda’, kelas = ‘1SIB’, username = ‘Okta’, password = ‘okta00’
where nim = ‘44234’;
Penjelasan
Mengubah data dari field yang nim = 44234.
8. Soal 3
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal Koneksi database !";
}
$query = mysqli_query($con, "SELECT * FROM matakuliah");
while($data = mysqli_fetch_array($query)){
echo "-------------------------------------<br />";
echo "Mata Kuliah : ".$data['mk_nama']."<br />";
echo "Kode Mata Kuliah : ".$data['mk_kode']."<br />";
echo "Dosen Pengampu : ".$data['mk_dosen']."<br />";
}
?>
Penjelasan
Menampilkan isi dari tabel matakuliah dengan menggunakan fungsi array (prosedural) pada PHP.
Output
9. Soal 4
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal Koneksi database !";
}
$query = mysqli_query($con, "SELECT * FROM matakuliah");
while($data = mysqli_fetch_object($query)){
echo "-------------------------------------<br />";
echo "Mata Kuliah : ".$data->mk_nama."<br />";
echo "Kode Mata Kuliah : ".$data->mk_kode."<br />";
echo "Dosen Pengampu : ".$data->mk_dosen."<br />";
}
?>
Penjelasan
Menampilkan isi dari tabel matakuliah dengan menggunakan fungsi object (OOP) pada PHP.
Output
10. Soal 5
Script
<?php
$con = mysqli_connect("localhost", "root", "", "bw2db");
if(mysqli_connect_errno($con)){
echo "Gagal Koneksi database !";
}
$query = mysqli_query($con, "SELECT * FROM matakuliah");
$rows = mysqli_num_rows($query);
if($rows>4){
echo "<b><i>Mata Kuliah pada semester ini telah cukup</i></b>";
}elseif($rows<4){
echo "<b><i>Mata Kuliah yang tersedia tidak cukup, tambahkan Mata Kuliah</i></b>";
}
?>
Penjelasan
Memberikan kondisi, apabila jumlah baris besar dari empat, maka akan tampil pernyataan :
“Mata Kuliah pada semester ini telah cukup”, jika tidak, maka : “Mata Kuliah yang tersedia tidak cukup
tambahkan Mata Kuliah”.
Karena jumlah baris pada tabel matakuliah = 3, maka akan muncul pernyataan seperti di bawah
ini :
Output

Laporan Praktikum Web dengan PHP

  • 1.
    LAPORAN PRAKTIKUM BENGKEL WEB2 (PHP) MODUL 5 – MODUL 8 OKTA RIVERANDA 1257301042
  • 2.
    Modul 5. BacaFile, Upload (Unggah) File, Cookies dan Session 1. Membaca File Script Penjelasan <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B $file = fopen("halo.txt", "r") or exit("Unable to open file!"); while(!feof($file)){ echo fgets($file)."<br />"; } fclose($file); $file = fopen("halo.txt", "r")or exit("Unable to open file!"); while(!feof($file)){ echo fgetc($file)."<br />"; } fclose($file); ?> Terdapat sebuah fungsi didalam PHP yang memungkinkan untuk mengolah file, yang dalam hal ini adalah file berekstensi .txt . fopen(“halo.txt”, “r”) : membuka file dengan nama halo.txt . Fungsi feof() : mengecek akhir dari file. Fungsi fgets() : membaca file per baris. Fungsi fgetc() : membaca file per karakter
  • 3.
    Output 2. Form UploadFile Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B ?> <html> <head> <title>Upload File</title> </head> <body> <form action="Modul_5_UploadTampil.php" method="post" enctype="multipart/form- data">
  • 4.
    <center> File Name :<input type="file" name="file" id="file"><br /> <input type="submit" value="SEND"> </center> </form> </body> </html> Penjelasan Program di atas merupakan program yang digunakan untuk membuat tampilan fisik inputan dari penguploadan file. Output 3. Tampil Hasil Upload Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B if($_FILES['file']['error'] > 0){ echo "Error : ".$_FILES['file']['error']."<br />"; }else{ $uploadFolder = 'uploaded/'; $namaFile = $_FILES['file']['name']; $tmp = $_FILES['file']['tmp_name']; echo "Upload : ".$namaFile."<br />"; echo "Type : ".$_FILES['file']['type']."<br />"; echo "Size : ".($_FILES['file']['size'] / 1024)."kB <br />"; echo "Stored in : ".$uploadFolder."/".$namaFile; move_uploaded_file($tmp, "$uploadFolder/$namaFile"); } ?>
  • 5.
    Penjelasan Baris 7 :Pengondisian apabila terdapat error sesaat setelah menginputkan file. Baris 9 – 19 : Merupakan kondisi apabila file yang diinputkan benar. Baris 10 : Adalah variabel yang merujuk kepada nama folder tempat menyimpan file tersebut. Baris 11 : Variabel yang merujuk kepada nama file yang diupload. Baris 13 : Tempat penyimpanan sementara. Baris 14 : Menampilkan nama file yang sudah tersimpan ke dalam server. Baris 15 : Menampilkan tipe file yang diupload. Baris 16 : Menampilkan ukuran file dalam ukuran kilo Byte. Baris 17 : Menampilkan lokasi penyimpanan file yang berada di server. Baris 18 : Memindahkan file yang tadinya berada di tempat penyimpanan sementara ke tempai penyimpanan server. Output File yang diupload bernama localhost.sql, telah disimpan ke dalam server. 4. Cookies Script <?php //Nama : Okta Riveranda //Kelas : 1 SI B //NIM : 1257301042 setcookie("user", "Okta Riveranda", time()+3600); setcookie("status", "Administrator",time()+3600); ?> <html> <head> <title>Cookies</title> </head> <body> <?php echo $_COOKIE['user']."<br />"; ?> <?php print_r($_COOKIE); ?> </body></html>
  • 6.
    Penjelasan Fungsi setcookie() merupakanfungsi built – in PHP yang digunakan untuk mengatur keaktifan user pada saat sedang mengakses web. Fungsi time adalah memberikan batasan waktu atas keaktifan user. Output 5. Session Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B session_start(); $_SESSION['name'] = "Okta Riveranda"; $_SESSION['band'] = "Senior Software Engineer"; ?> <html> <head> <title>Session</title> </head> <body> <?php echo "Nama : ".$_SESSION['name']."<br />"; echo "Band : ".$_SESSION['band']."<br />"; ?> <a href="Modul_5_Session2.php">Cek Session Aktif</a> </body> </html> Penjelasan Selain cookie, ada suatu fungsi built – in pada PHP yang memberikan manfaat sebagaiman manfaat dari penggunaan cookie. Fungsi tersebut adalah session. Jika cookie memberikan batasan waktu pada keaktifan user, maka session tidak memberikan itu. Session bekerja secara manual (tidak menggunakan batasan waktu), sehingga akan ada banyak fungsi yang digunakan untuk mengaktifkan dan menonaktifkan user. Output
  • 7.
    6. Session 2 Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B session_start(); ?> <html> <head> <title>Session Aktif</title> </head> <body> <h3>Apakah sessionnya masih aktif</h3> <?php echo "Nama : ".$_SESSION['name']."<br />"; echo "Band : ".$_SESSION['band']."<br />"; if(!empty($_SESSION['name'])){ echo "<h5>Oh, tidak error, berarti session masih aktif</h5>"; }else{ echo "<h5>Oh, error, berarti session telah dihapus !</h5>"; } echo "<a href='Modul_5_Session3.php'>Hancurkan Session</a>"; ?> </body> </html> Penjelasan Program di atas adalah program yang digunakan untuk mengecek keaktifan dari sebuah user.. Output
  • 8.
    7. Session 3 Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B session_start(); session_destroy(); unset($_SESSION['name']); unset($_SESSION['band']); ?> <html> <head> <title>Session Destroy</title> </head> <body> <h3>Kalau error, berarti benar, session telah dihapus</h3> <?php echo "Nama : ".$_SESSION['name']."<br />"; echo "Band : ".$_SESSION['band']."<br />"; ?> <a href="Modul_5_Session.php">Buat session lagi, ah !</a> </body> </html> Penjelasan Program di atas adalah program yang digunakan untuk menghancurkan sesi dari user yang sedang aktif.
  • 9.
    Output 8. Soal 2 Script <?php //Nama: Okta Riveranda //NIM ; 1257301042 //Kelas : 1 SI B $file = fopen("Modul_5_Soal1.txt", "r") or exit("Unable to read a file !"); while(!feof($file)){ echo fgets($file); } fclose($file); ?> Penjelasan Soal 2 adalah implementasi dari soal 1 yang ditujukan untuk membuat sebuah program yang akan menampilkan apa apa yang sudah ditulis pada file Modul_5_Soal1.txt Output
  • 10.
    9. Soal 3A Script <?php //Nama: Okta Riveranda //NIM ; 1257301042 //Kelas : 1 SI B ?> <html> <head> <title>Login Form</title> </head> <body> <form action="Modul_5_Soal3B.php" method="post"> <table align="center"> <tr> <td> Username </td> <td> : <input type="text" size="30" required name="name"> </td> </tr> <tr> <td> Password </td> <td> : <input type="password" size="30" required name="pass"> </td> </tr> <tr> <td align="center" colspan="2"> <input type="submit" value="LOGIN"> </td> </tr> </table> </form> </body> </html> Penjelasan Sebuah program untuk menampilkan tampilan fisik dari form login.
  • 11.
    Output 10. Soal 3B Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 Si B session_start(); $user = $_POST['name']; $pass = $_POST['pass']; if(($user == "saya") && ($pass == "admin")){ $SESSION['name'] = $user; $SESSION['name'] = $pass; header('location:Modul_5_Soal3C.php'); }else{ include_once "Modul_5_Soal3A.php"; echo "<center><h3>Kesalahan username dan password</h3></center>"; } ?> Penjelasan Program yang berfungsi untuk menentukan apakah form yang diinputkan oleh user sesuai dengan yang ditentukan oleh pemrogram. Apabila user lolos dalam penyeleksian tersebut maka, user akan langsung dibawa ke halaman admin dengan menggunakan header.
  • 12.
    Output Output 2 Apabila terjadikesalahan pada saat penginputan usernam dan password atau dengan kata lain, inputan tidak sesuai dengan apa yang telah ditentukan pemrogram maka, akan muncul output seperti berikut di bawah ini. 11. Soal 3C Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B session_start(); session_destroy(); ?> <html> <head> <title>Admin</title> </head> <body> <center><h1>Welcome to admin page !</h1></center> <center><h3><a href="Modul_5_Soal3A.php">Kembali Login</a></h3></center> </body> </html>
  • 13.
    Penjelasan Program di atasadalah apa yang akan ditampilkan apabila user dipersilakan masuk atau dengan kata lain apa yang diinputkan sesuai dengan ketentuan pemrogram. Output
  • 14.
    Modul 6. BacaFile, Upload (Unggah) File, Cookies dan Session 1. Error Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B ?> <?php function customError($errno, $errstr){ echo "<b>Error : </b>[$errno] $errstr"; } set_error_handler("customError"); echo($test)."<br />"; print $_GET['id']; $file = fopen("welcome.txt", "r"); ?> Penjelasan Program di atas sudah sangat jelas terjadi kesalahan, disebabkan oleh tidak adanya pendeklarasian variabel. Sehingga akan muncul pesan kesalahan “undefined” atau tidak terdefinisi. Output
  • 15.
    2. Error (modified) Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B ?> <?php function customError($errno, $errstr){ echo "<b>Error : </b>[$errno] $errstr"; } set_error_handler("customError"); echo($test)."<br />"; print $_GET['id']; $file = fopen("welcome.txt", "r"); ?> Penjelasan Untuk menanggulangi kesalahan tersebut maka diperlukan perubahan pada syntax yang ditulis. Perubahan yang dilakukan bukan untuk menampilkan pernyataan yang benar, melainkan menampilkan kesalahan agar tampa lebih rapi. Inilah yang disebut sebagai error handling. Bahasa PHP sudah menyediakan fungsi built – in untuk itu. Output
  • 16.
    3. Filtering Integer Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B $int = 123; if(!filter_var($int, FILTER_VALIDATE_INT)){ echo "Tidak valid ! Data tidak integer !"; }else{ echo "Valid ! Data integer !"; } echo "<br />"; $var = 300; $int_options = array("options"=>array("min_range"=>0, "max_range"=>256)); if(!filter_var($var, FILTER_VALIDATE_INT,$int_options)){ echo "data valid dan di dalam range"; }else{ echo "data tidak valid atau di luar range !"; } ?> Penjelasan Salah satu bentuk penanggulangan yang ada adalah, menanggulangi terjadinya kesalahan tipe pada suatu variabel. Dalam kasus ini adalah tipe integer. Ada 2 variabel yang akan diproses kebenarannya disini : 1. $int = 123. Variabel ini akan diuji apakah ia termasuk variabel bertipe integer atau tidak. 2. $var = 300. Variabel ini akan diuji apakah ia tidak berada di dalam antara bilangan 0 sampai 256. Output
  • 17.
    4. Filtering Email Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B if(!filter_has_var(INPUT_GET,"email")){ echo "Data email tidak ada"; }else{ if(!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL)){ echo "Email tidak valid !"; }else{ echo "Email valid <br />"; print $_GET['email']; } } ?> Penjelasan Selain memberikan fungsi validasi, PHP juga memberikan fungsi untuk memvalidasi apakah suatu inputan termasuk tipe data email ataukah tidak. Output Output 2 Apabila terjadi kesalahan atau dengan kata lain, inputan tidak sesui dengan ketentuan atau format email, maka akan tampil pesan berikut :
  • 18.
    5. Soal 1 Script <?php //Nama: Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B ?> <html> <head> <title>Form Input</title> </head> <body marginwidth="500"> <form action="Modul_6_Soal2.php" method="post"> <fieldset> <table width="500" align="center"> <tr> <td>Nama</td> <td>: <input type="text" name="nama" size="30"> </tr> <tr> <td>NIM</td> <td>: <input type="text" name="nim" size="30"> </tr> <tr> <td>Umur</td> <td>: <input type="text" name="umur" size="30"> </tr> <tr> <td>Email</td> <td>: <input type="text" name="email" size="30"> </tr> <tr> <td colspan="2" align="center"> <input type="submit" value="SEND"> </td> </tr> </table> </fieldset> </form> </body> </html> Penjelasan Program di atas adalah program yang digunakan untuk menampilkan form inputan yang nantinya akan dikonfigurasi oleh file Modul_6_Soal2.php .
  • 19.
    Output 6. Soal 2(lanjutan) Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B $nama = $_POST['nama']; $nim = $_POST['nim']; $umur = $_POST['umur']; $email = $_POST['email']; $urut_pesan = 0; $pesan; $counter = 0; function cekNama($name){ global $pesan; global $counter; if(filter_var($name, FILTER_VALIDATE_INT)){ $pesan[] = "Nama harus bertipe String !"; $counter++; } return $pesan; } function cekNim($nomor){ global $pesan; global $counter; if(!filter_var($nomor, FILTER_VALIDATE_INT)){ $pesan[] = "NIM harus bertipe integer !"; $counter++; } return $pesan; } function cekUmur($usia){
  • 20.
    global $pesan; global $counter; if(!filter_var($usia,FILTER_VALIDATE_INT)){ $pesan[] = "Umur harus bertipe integer !"; $counter++; } return $pesan; } function cekEmail($imel){ global $pesan; global $counter; if(!filter_has_var(INPUT_POST,$imel)){ echo "Data email tidak ada"; }else{ if(!filter_input(INPUT_POST, $imel, FILTER_VALIDATE_EMAIL)){ echo "Email tidak valid !"; }else{ echo "Email valid <br />"; print $_POST['email']; } } return $pesan; } cekNama($nama); cekNim($nim); cekUmur($umur); cekEmail($email); if($counter>0){ echo "<center>"; include_once "Modul_6_Soal1.php"; echo "Kesalahan inputan : <br />"; foreach ($pesan as $pesan_tampil) { $urut_pesan++; echo "<font color='#FF0000'>"; echo "$urut_pesan . $pesan_tampil <br>"; echo "</font>"; } echo "</center>"; }else{ header('location:admin.php'); } ?>
  • 21.
    Penjelasan Program di atasadalah program yang bertujuan untuk memebrikan error handling pada program soal nomor 1. Program ini akan memeriksa apakah inputan user tersebut sesuai dengan tipe data yang diiinginkan sistem atau tidak. Jika ada kesalahan dalam penginputan, maka sistem akan memberikan pesan kesalahan yang menunjukkan kesalahan dari inputan user. 1. Fungsi cekNama($name) : Adalah fungsi yang bertujuan untuk menampilkan kesalahan apabila variabel nama bertipe int. 2. Fungsi cekNim($nomor) : Adalah fungsi yang bertujuan untuk memeriksa apakah inputan untuk nim bertipe int atau tidak. Jika tidak, maka sistem akan menampilkan pesan kesalahan. 3. Fungsi cekUmur($usia) : Adalah fungsi yang bertujuan untuk memeriksa apakah inputan umur bertipe int atau tidak. 4. Fungsi cekEmail($imel) : Adalah fungsi yang berfungsi untuk memvalidasi apakah inputan bertipe email atau tidak. Output
  • 22.
    7. Soal nomor3 (lanjutan) Script <?php //Nama : Okta Riveranda //NIM : 1257301042 //Kelas : 1 SI B $nama = $_POST['nama']; $nim = $_POST['nim']; $umur = $_POST['umur']; $email = $_POST['email']; $urut_pesan = 0; $pesan; $counter = 0; function cekNama($name){ global $pesan; global $counter; if(filter_var($name, FILTER_VALIDATE_INT)){ $pesan[] = "Nama harus bertipe String !"; $counter++; } return $pesan; } function cekNim($nomor){ global $pesan; global $counter; if(!filter_var($nomor, FILTER_VALIDATE_INT)){ $pesan[] = "NIM harus bertipe integer !"; $counter++; } return $pesan; } function cekUmur($usia){ global $pesan; global $counter; if(!filter_var($usia, FILTER_VALIDATE_INT)){ $pesan[] = "Umur harus bertipe integer !"; $counter++; } return $pesan; } function cekEmail($imel){ global $pesan; global $counter; if(!filter_has_var(INPUT_POST,$imel)){
  • 23.
    echo "Data emailtidak ada"; }else{ if(!filter_input(INPUT_POST, $imel, FILTER_VALIDATE_EMAIL)){ echo "Email tidak valid !"; }else{ echo "Email valid <br />"; print $_POST['email']; } } return $pesan; } if(empty($nama)){ $pesan[] = "Data Nama Kosong !"; $counter++; }if(empty($nim)){ $pesan[] = "Data NIM kosong !"; $counter++; }if(empty($umur)){ $pesan[] = "Data umur Kosong !"; $counter++; }if(empty($email)){ $pesan[] = "Data email kosong !"; $counter++; } cekNama($nama); cekNim($nim); cekUmur($umur); cekEmail($email); if($counter>0){ echo "<center>"; include_once "Modul_6_Soal1.php"; echo "Kesalahan inputan : <br />"; foreach ($pesan as $pesan_tampil) { $urut_pesan++; echo "<font color='#FF0000'>"; echo "$urut_pesan . $pesan_tampil <br>"; echo "</font>"; } echo "</center>"; }else{ header('location:admin.php'); } ?> Penjelasan Syntax di atas adalah syntax tambahan dari error handler sebelumnya yang akan berfungsi menampilkan error sesuaidengan error pada inputannya. Output
  • 24.
    Modul 7. PHPdan Database MySQL (1) 1. Membuat Database Script Syntax : mysql –u root [Enter] Untuk mengakses mysql pada xampp server, maka kita harus masuk pada direktori xamppmysqlbin dengan cara cd xamppmysqlbin. Kemudian login dengan mengetikkan syntax mysql –u root. Pada syntax tersebut terdapat –u, ini adalah singkatan dari username jadi, kita menggunakan root untuk mengakses database mysql.
  • 25.
    Syntax : usebw2db [Enter]. Untuk membuat sebuah database bernama BW2db pada mysql, gunakan syntax CREATE DATABASE BW2db. Kemudian, untuk menggunakan atau untuk berada di posisi aktif pada suatu database, gunakan syntax use BW2db. Syntax : 1. Create table mahasiswa( 2. id int(20) NOT NULLAUTO_INCREMENT, 3. nama varchar(255) NOT NULL, 4. nim varchar(255), 5. kelas varchar(255), 6. username varchar(255), 7. password varchar(255), 8. PRIMARYKEY(id) 9. ); Syntax yang digunakan untuk membuat suatu table yang bernama mahasiswa di dalam database adalah create table mahasiswa. Di dalam tabel tersebut diisi oleh beberapa field : 1. id : int (10 karakter), 2. nama : varchar (255 karakter), 3. nim : varchar (255 karakter), 4. kelas : varchar (255 karakter), 5. username : varchar (255 karakter), 6. password : varchar (255 karakter), 7. dan id sebagai PRIMARY KEY- nya. Untuk melihat apakah table tersebut telah terbentuk atau belum, dapat digunakan syntax show tables; Syntax : 1. insert into mahasiswa 2. (nama, nim, kelas, username,password) 3. values 4. (‘Ujang 1’, ‘11234’, ‘1SIB’, ‘ujang’, MD5(ujang00)), 5. (‘Badu 2’, ‘22234’, ‘1SIB’, ‘badu’, MD5(badu00)), 6. (‘Surono 3’, ‘33234’, ‘1SIB’, ‘surono’, MD5(surono00)), 7. (‘Aibekop 4’, ‘44234’, ‘1SIB’, ‘aibekop’, MD5(aibekop00)); Syntax yang digunakan untuk menginputkan data secara manual adalah insert into nama_table (field1, field2, ..field n) values (isi_field1, isi_field2, isi_fieldn);
  • 26.
    2. Membuat koneksike database Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Failed to connect to MySQL : ".mysqli_connect_error(); }else{ echo "Successfully connected !"; } ?> Penjelasan Program di atas adalah program yang digunakan untuk mengkoneksikan file PHP dengan DBMS MySQL. Output 3. Membuat Tabel Mata Kuliah Script Penjelasan Syntax: 1. create table matakuliah( 2. mk_id int(20) AUTO_INCREMENT, 3. mk_nama varchar(30), 4. mk_kode varchar(10), 5. mk_dosen varchar(50), 6. PRIMARYKEY(mk_id) 7. ); Membuat tabel matakuliah tang terdiri dari 4 field : 1. mk_id : int (20 karakter). 2. mk_nama : varchar(30 karakter). 3. mk_kode : varchar(10 karakter). 4. mk_dosen : varchar(50 karakter).
  • 27.
    4. Menginput Datapada Tabel Mata Kuliah Script Syntax : 1. Insert into matakuliah 2. (mk_nama, mk_kode, mk_dosen) 3. Values 4. (‘Bengkel Web 2’, ‘V2314’, ‘Muhammad Ihsan Zul’), 5. (‘Basis Data’,‘V3524’, ‘Kartina Diah KW’), 6. (‘Computer Animation’, ‘V6573’, ‘Anggi Trinadoli’), 7. (‘Basis Data Lanjut’, ‘V5464’, ‘WawanYuwanto’) 8. ; Penjelasan Syntax di atas digunakan untuk menginputkan data pada tabel matakuliah yang telah dibuat sebelumnya. 5. Menampilkan Tabel Mata Kuliah Script Syntax : 1. show tables; 2. select * from matakuliah; Penjelasan Syntax di atas digunakan untuk menampilkan tabel yang ada pada database yang sedang aktif (pada saat ini adalah database bw2db).
  • 28.
    Modul 8. PHPdan Database MySQL (2) 1. Update Tabel Mata Kuliah Script Syntax : update matakuliah set mk_nama = ‘Animation’, ‘V3333’ WHERE mk_id = 3; select * from matakuliah; Penjelasan Syntax di atas digunakan untuk mengupdate (mengubah) suat field yang bernama mk_nama, dan mk_kode,yang mana mk_id = 3. Format syntaxnya adalah update nama_tabel set field1 = ‘’, field2 = ‘’fieldn=’’where fieldx = ‘’; 2. Delete Tabel Mata Kuliah Script Penjelasan Syntax di atas digunakan untuk menghapus suatu field pada tabel yang diinginkan. Pada contoh program di atas,field yang akan dihapus adalah field yang memiliki mk_id = 4; Format syntaxnya adalah delete from matakuliah where mk_id = 4;
  • 29.
    3. Query DatabaseBW2db Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal terhubung ke mySQL : ".mysqli_connect_error(); } $query = mysqli_query($con, "select * from mahasiswa"); while($m = mysqli_fetch_array($query)){ echo "Nama : ".$m['nama']."<br />NIM : ".$m['nim']."<br />"; } ?> Penjelasan Program di atas program yang digunakan untuk : 1. Menghubungkan file PHP dengan tabel mahasiswa yang terdapat pada database bernama bw2db. 2. Menampilkan data tabel matakuliah dengan menggunakan looping dan array. Output
  • 30.
    4. Query DatabaseBW2db 2 Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal terhubung ke mySQL : ".mysqli_connect_error(); } $query = mysqli_query($con, "select * from mahasiswa"); while($m = mysqli_fetch_object($query)){ echo "Nama : ".$m->nama."<br />NIM : ".$m->nim."<br />"; } ?> Penjelasan Program di atas merupakan suatu bentuk lain dari pengimplementasian dari program sebelumnya. Jika sebelumnya, pemanggilan isi tabel masih bersifat prosedural, maka pada program ini pemanggilan isi tabel bersifat OOP. Itu terdapat pada baris ke – 11. $m->nama dan $m->nim. Output
  • 31.
    5. Query DatabaseBW2db 3 Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal terhubung ke mySQL : ".mysqli_connect_error(); } $query = mysqli_query($con, "select * from mahasiswa"); $total = mysqli_num_rows($query); echo $total; ?> Penjelasan Untuk menampilkan banyak baris pada suatu tabel, maka digunakan fungsi PHP yang bernama mysqli_num_rows($var);. Output 6. Soal 1 Script Syntax : Delete from matakuliah where mk_id = 4; select * from matakuliah; Penjelasan Menghapus field dengan mk_id = 4.
  • 32.
    7. Soal 2 Script Syntax: Update mahasiswa set nama = ‘Okta Riveranda’, kelas = ‘1SIB’, username = ‘Okta’, password = ‘okta00’ where nim = ‘44234’; Penjelasan Mengubah data dari field yang nim = 44234. 8. Soal 3 Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal Koneksi database !"; } $query = mysqli_query($con, "SELECT * FROM matakuliah"); while($data = mysqli_fetch_array($query)){ echo "-------------------------------------<br />"; echo "Mata Kuliah : ".$data['mk_nama']."<br />"; echo "Kode Mata Kuliah : ".$data['mk_kode']."<br />"; echo "Dosen Pengampu : ".$data['mk_dosen']."<br />"; } ?> Penjelasan
  • 33.
    Menampilkan isi daritabel matakuliah dengan menggunakan fungsi array (prosedural) pada PHP. Output 9. Soal 4 Script <?php $con = mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal Koneksi database !"; } $query = mysqli_query($con, "SELECT * FROM matakuliah"); while($data = mysqli_fetch_object($query)){ echo "-------------------------------------<br />"; echo "Mata Kuliah : ".$data->mk_nama."<br />"; echo "Kode Mata Kuliah : ".$data->mk_kode."<br />"; echo "Dosen Pengampu : ".$data->mk_dosen."<br />"; } ?> Penjelasan Menampilkan isi dari tabel matakuliah dengan menggunakan fungsi object (OOP) pada PHP. Output
  • 34.
    10. Soal 5 Script <?php $con= mysqli_connect("localhost", "root", "", "bw2db"); if(mysqli_connect_errno($con)){ echo "Gagal Koneksi database !"; } $query = mysqli_query($con, "SELECT * FROM matakuliah"); $rows = mysqli_num_rows($query); if($rows>4){ echo "<b><i>Mata Kuliah pada semester ini telah cukup</i></b>"; }elseif($rows<4){ echo "<b><i>Mata Kuliah yang tersedia tidak cukup, tambahkan Mata Kuliah</i></b>"; } ?> Penjelasan Memberikan kondisi, apabila jumlah baris besar dari empat, maka akan tampil pernyataan : “Mata Kuliah pada semester ini telah cukup”, jika tidak, maka : “Mata Kuliah yang tersedia tidak cukup tambahkan Mata Kuliah”. Karena jumlah baris pada tabel matakuliah = 3, maka akan muncul pernyataan seperti di bawah ini : Output