Anda di halaman 1dari 8

LATIHAN PRAKTIKUM PEMROGRAMAN WEB

BAB : OPERASI FILE


NAMA : JOGI OLIVER YOHANES T
NIM : 175150207111019
ASISTEN : 1. ACHMAD SETYABUDI SUSILO
2. ABDURRAHMAN DIEWA PRAKARSA
TGL PRAKTIKUM : 29 MARET 2019

LATIHAN 1
A. Soal

Buatlah file txt dengan nama testFile.txt, dan berisi:

Fakultas Ilmu Komputer


Universitas Brawijaya

Tulis kode berikut.

1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'r');
4 $theData = fread($fh, 5);
5 fclose($fh);
6 echo $theData;

a. Apa yang dihasilkan dari kode tersebut? Lalu ganti fread($fh, 5); dengan fread($fh,
filesize($myFile)); dan bandingkan serta jelaskan!
b. Jelaskan mengapa ada huruf r pada baris ketiga dan jelaskan pula artinya!

B. Screenshoot

Penggunaan fread($fh, 5);


Penggunaan method fread($fh, filesize($myFile));

C. Syntax

1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'r');
4 //$theData = fread($fh, 5);
5 $theData = fread($fh, filesize($myFile));
6 fclose($fh);
7 echo $theData;

D. Penjelasan
a. Yang dihasilkan dari percobaan pertama adalah 5 karakter dari file testFile.txt
terbacakan. Sehingga hasilnya ketika di echo adalah “Fakul”. Sedangkan pada
percobaan kedua, Batasan dari parameter fread diubah menjadi filesize dari file
testFile.txt sehingga yang tercetak adalah “Fakultas Ilmu Komputer Universitas
Brawijaya”.
b. Alasan adanya tag “r” pada line ketiga karena “r” ini digunakan untuk memperoleh
data file dengan melakukan pembukaan dan “pembacaan” testFile.txt. “r” tersebut
merupakan sebuah mode yang merupakan bagian dari parameter dari method fopen().

LATIHAN 2
A. Soal

Tulis kode berikut.

1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'r');
4 $theData = fgets($fh);
5 fclose($fh);
6 echo $theData;

a. Bandingkan dengan kode di Latihan 1, dan buatlah sebuah kesimpulan terhadap fungsi fread().
b. Modifikasi kode diatas sehingga dapat menampilkan isi baris kedua dari testFile.txt!
B. Screenshoot

Soal a

Soal b

C. Syntax

Sebelum modifikasi
1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'r');
4 $theData = fgets($fh);
5 fclose($fh);
6 echo $theData;
Setelah modifikasi
1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'r');
4 while (! feof ($fh))
5 {
6 echo fgets($fh),"<br>";
7 }
8 fclose($fh);
9 ?>

D. Penjelasan
1. Perbedaan fgets dan fread yang dapat disimpulkan dari percobaan diatas adalah, fgets
langsung melakukan pengambilan dari baris pertama (pengambilannya baris per baris)
text dalam testFile.txt . Sedangkan pada fread, terdapat sebuah parameter sehingga
dapat dilakukan pengambilan jumlah berdasarkan karakter dalam file tersebut.
2. Untuk pemodifikasian agar dapat ditampilkan semua teks dari testFile.txt, maka
dilakukan looping dengan Batasan while yaitu tidak sampai bagian akhir dari $fh
(!feof). Dalam looping tersebut dilakukan pencetakan dengan echo untuk hasi dari fgets
dan penambahan baris baru (karena echo) sehingga menampilkan output seperti pada
screenshot diatas.

LATIHAN 3
A. Soal

Tulis kode berikut.

1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'w') or die("can't open file");
4 $stringData = "Bobby Bopper\n";
5 fwrite($fh, $stringData);
6 $stringData = "Tracy Tanner\n";
7 fwrite($fh, $stringData);
8 fclose($fh);

Apa isi dari file testFile.txt? Jelaskan.

B. Screenshoot

Isi file testFile.txt setelah percobaan Latihan 3.

C. Syntax

index.html
1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'w') or die("can't open file");
4 $stringData = "Bobby Bopper\n";
5 fwrite($fh, $stringData);
6 $stringData = "Tracy Tanner\n";
7 fwrite($fh, $stringData);
8 fclose($fh);
9 ?>

D. Penjelasan
Isi dari testFile sekarang adalah Bobby Bopper dan baris keduanya adalah Tracy Tanner.
Dapat dilihat juga bahwa tulisan Fakultas Ilmu Komputer Universitas Brawijaya diganti
dengan kedua string tersebut.

LATIHAN 4
A. Soal

Tulis kode berikut.

1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'a') or die("can't open file");
4 $stringData = "New Stuff 1\n";
5 fwrite($fh, $stringData);
6 $stringData = "New Stuff 2\n";
7 fwrite($fh, $stringData);
8 fclose($fh);

a. Apa isi dari file testFile.txt?


b. Bandingkan dengan kode di soal sebelumnya. Jelaskan apa beda dan maksudnya.

B. Screenshoot

Isi file testFile.txt setelah percobaan Latihan 4.

C. Syntax

index.html
1 <?php
2 $myFile = "testFile.txt";
3 $fh = fopen($myFile, 'a') or die("can't open file");
4 $stringData = "New Stuff 1\n";
5 fwrite($fh, $stringData);
6 $stringData = "New Stuff 2\n";
7 fwrite($fh, $stringData);
8 fclose($fh);
9 ?>
D. Penjelasan
a. Isi dari testFile.txt sekarang adalah : Baris pertamnya Bobby Bopper, baris keduanya
adalah Tracy Tanner, baris ketiganya adalah New Stuff 1, dan baris terakhirnya New
Stuff 2.
b. Dapat dibandingkan dengan percobaan 3, penamnahan New Stuff 1 dan New Stuff 2
ini tidak menghilangkan data sebelumnya yaitu Bobby Bopper dan Tracy Tanner. Ini
terjadi karena pada Latihan 4, digunakan mode “a” pada parameter fopen nya. “a” ini
digunakan untuk melakukan penambahan data terhadap file. Perbedaannya dengan
dengan “w” yang digunakan pada Latihan 3 adalah data yang sudah ada direplace
dengan yang baru.

LATIHAN 5
A. Soal
- Buatlah file guestbook.txt yang isinya kosong.
- Buatlah form dengan isian nama dan komentar. Form ini akan mengirimkan data nama
dan komentar user untuk selanjutnya akan disimpan dalam file guestbook.txt.
Simpan dengan pemisah “;” antara nama dan komentar.
- Buatlah kode untuk menampilkan hasil penyimpanan pada file guestbook.txt.
Gunakan fungsi explode() dengan pemisah “;” untuk menampilkan data.

B. Screenshoot

Membuat form inputan dengan hasil inputan Namanya tersimpan di guestbook.txt dengan pemisah “;”
antara nama dan komentar.

Menampilkan hasil penyimpanan file guestbook.txt.


C. Syntax

index.html
1 <html>
2 <title>Bab 9 - Latihan 5</title>
3 <body>
4 <form enctype="multipart/form-data" action="form.php"
method="post">
5 Name : <input name="name" type="text"
placeholder="Enter Name"><br>
6 Comment : <input name="comment" type="text"
placeholder="Enter Comment"><br>
7 <input type="submit" value="Submit">
8 </form>
9 </body>
10 </html>
form.php
1 <html>
2 <style>
3 </style>
4 <body>
5 <?php
6 //untuk masukin data ke txt
7 $content = $_POST['name'].';'.$_POST['comment']."\n";
8 $myFile = "guestbook.txt";
9 $fh = fopen($myFile, 'a+') or die("can't open file");
10 fwrite($fh,$content);
11 fclose($fh);
12 //untuk menampilkan yang ada di guestbook.
13 $read = fopen($myFile, 'r') or die("can't open file");
14 echo "Lihat komentar user sebelumnya : <br>";
15 while (! feof ($read))
16 {
17 $theData = fgets($read);
18 $arrData = explode(";",$theData);
19 for ($i = 0;$i < count($arrData)-1;$i++) {
20 echo "username : ",$arrData[$i],"<br>";
21 for ($j = 1;$j < count($arrData);$j++) {
22 echo "comment : ",$arrData[$j],"<br>";
23 }
24 echo "======================= <br>";
25 }
26 }
27 fclose($read);
28 ?>
29 </body>
30 </html>

D. Penjelasan

Untuk index.html, berlaku seperti pada bab 7 (FORM), yaitu dibuat form dengan action ke
form.php, dan menggunakan post. Kemudian diberikan 2 inputan yang keduanya berupa text
dengan Nama sebagai name, dan Komentar sebagai comment. Kemudian juga digunakan
tombol submit.

Kemudian untuk form.php, inputan name dan comment ditangkap menggunakan $_POST serta
keduanya di concat dengan tanda “;” dan disimpan ke variable $content (line 7). Deklarasi
variable $myFile sebgai rujukan file kosong yang sudah kita buat yaitu “guestbook.txt” (line
8). $fh digunakan untuk melakukan penambahan kedalam file kita. Digunakan a+ agar hasil
inputan user sebelumnya masih tersedia, karena bila digunakan w maka akan mereset semua
data yang ada didalamnya. Kemudian, pada line 10, digunakan fwrite untuk menuliskan content
ke dalam file. Dan terakhir pada line 11, file $fh ditutup dengan fclose. Untuk menampilkan
data dalam guestbook, digunakan $read. $read ini adalah untuk handling file hanya untuk
membaca isi yang terdapat pada guestbook.txt dengan menggunakan tag “r”. Kemudian
digunakan fgets untuk mencetak baris yang terdapat pada guestbook.txt. Data dari fgets
tersimpan pada variable $theData (line 17). Dapat terlihat pada line 18, data dari guestbook,
yaitu $theData, di explode dengan Batasan “;”. Karena explode mengubah string menjadi array,
maka dilakukan looping untuk mencetak nama dan komentar yang sudah diexplode dan
disimpan ke dalam $arrData. Kemudian $read ditutup dengan fclose (line 27). Hasil output
dapat dilihat pada bagian screenshot.

Anda mungkin juga menyukai