# Latihan

### **Latihan 1: Menghitung Luas Persegi Panjang**

**Soal**: Buatlah sebuah form yang meminta pengguna untuk memasukkan panjang dan lebar, kemudian hitung dan tampilkan luas persegi panjang tersebut.

**Contoh Code**:

```html
<form action="" method="POST">
  <label for="panjang">Panjang:</label>
  <input type="number" id="panjang" name="panjang">
  <br>
  <label for="lebar">Lebar:</label>
  <input type="number" id="lebar" name="lebar">
  <br>
  <input type="submit" value="Hitung">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $panjang = $_POST['panjang'];
  $lebar = $_POST['lebar'];
  $luas = $panjang * $lebar;
  echo "Luas Persegi Panjang: $luas";
}
?>
```

***

### **Latihan 2: Menghitung Usia**

**Soal**: Buat form yang meminta pengguna untuk memasukkan tahun lahir, kemudian hitung dan tampilkan usia mereka berdasarkan tahun saat ini.

**Contoh Code**:

```html
htmlCopy code<form action="" method="POST">
  <label for="tahun">Tahun Lahir:</label>
  <input type="number" id="tahun" name="tahun">
  <br>
  <input type="submit" value="Hitung Usia">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $tahun_lahir = $_POST['tahun'];
  $tahun_sekarang = date("Y");
  $usia = $tahun_sekarang - $tahun_lahir;
  echo "Usia Anda: $usia tahun";
}
?>
```

***

### **Latihan 3: Kalkulator Sederhana**

**Soal**: Buat form yang dapat melakukan operasi aritmatika dasar (tambah, kurang, kali, bagi) antara dua bilangan.

**Contoh Code**:

```html
<form action="" method="POST">
  <label for="bil1">Bilangan 1:</label>
  <input type="number" id="bil1" name="bil1">
  <br>
  <label for="bil2">Bilangan 2:</label>
  <input type="number" id="bil2" name="bil2">
  <br>
  <label for="operasi">Operasi:</label>
  <select id="operasi" name="operasi">
    <option value="tambah">Tambah</option>
    <option value="kurang">Kurang</option>
    <option value="kali">Kali</option>
    <option value="bagi">Bagi</option>
  </select>
  <br>
  <input type="submit" value="Hitung">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $bil1 = $_POST['bil1'];
  $bil2 = $_POST['bil2'];
  $operasi = $_POST['operasi'];
  $hasil = 0;

  switch ($operasi) {
    case 'tambah':
      $hasil = $bil1 + $bil2;
      break;
    case 'kurang':
      $hasil = $bil1 - $bil2;
      break;
    case 'kali':
      $hasil = $bil1 * $bil2;
      break;
    case 'bagi':
      $hasil = $bil1 / $bil2;
      break;
  }

  echo "Hasil: $hasil";
}
?>
```

***

### **Latihan 4: Pendaftaran Event**

**Soal Cerita**: Buat form pendaftaran untuk sebuah event seminar. Form ini harus berisi input untuk nama, email, dan topik pilihan seminar.

**Contoh Code**:

<pre class="language-html"><code class="lang-html">&#x3C;!-- form_proses.php -->
<strong>&#x3C;form action="proses.php" method="POST">
</strong>  &#x3C;label for="nama">Nama:&#x3C;/label>
  &#x3C;input type="text" id="nama" name="nama">&#x3C;br>

  &#x3C;label for="email">Email:&#x3C;/label>
  &#x3C;input type="email" id="email" name="email">&#x3C;br>

  &#x3C;label for="topik">Topik Seminar:&#x3C;/label>
  &#x3C;select id="topik" name="topik">
    &#x3C;option value="web">Web Development&#x3C;/option>
    &#x3C;option value="ai">Artificial Intelligence&#x3C;/option>
    &#x3C;option value="data">Data Science&#x3C;/option>
  &#x3C;/select>&#x3C;br>

  &#x3C;input type="submit" value="Daftar">
&#x3C;/form>
</code></pre>

```php
<!-- proses.php -->
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $nama = htmlspecialchars($_POST['nama']);
  $email = htmlspecialchars($_POST['email']);
  $topik = htmlspecialchars($_POST['topik']);
  
  echo "Terima kasih, $nama telah mendaftar pada topik $topik. Email konfirmasi akan dikirim ke $email.";
}
?>
```

***

### **Latihan 5: Pemesanan Tiket Bioskop**

**Soal Cerita**: Buat form untuk memesan tiket bioskop. Pengguna harus memasukkan nama, jumlah tiket, dan memilih film yang ingin ditonton.

**Contoh Code**:

```html
<!-- form_pesan.php -->
<form action="pesan.php" method="POST">
  <label for="nama">Nama:</label>
  <input type="text" id="nama" name="nama"><br>

  <label for="jumlah">Jumlah Tiket:</label>
  <input type="number" id="jumlah" name="jumlah"><br>

  <label for="film">Film:</label>
  <select id="film" name="film">
    <option value="action">Action</option>
    <option value="comedy">Comedy</option>
    <option value="horror">Horror</option>
  </select><br>

  <input type="submit" value="Pesan">
</form>
```

```php
<!-- pesan.php -->
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $nama = htmlspecialchars($_POST['nama']);
  $jumlah = (int)$_POST['jumlah'];
  $film = htmlspecialchars($_POST['film']);

  echo "$nama, Anda memesan $jumlah tiket untuk film $film.";
}
?>
```

***

### **Latihan 6: Pengiriman Umpan Balik**

**Soal Cerita**: Buat form untuk mengirimkan umpan balik kepada sebuah perusahaan. Pengguna harus memasukkan nama, email, dan pesan umpan balik.

**Contoh Code**:

```html
<!-- form_eedback.php -->
<form action="feedback.php" method="POST">
  <label for="nama">Nama:</label>
  <input type="text" id="nama" name="nama"><br>

  <label for="email">Email:</label>
  <input type="email" id="email" name="email"><br>

  <label for="pesan">Pesan:</label>
  <textarea id="pesan" name="pesan"></textarea><br>

  <input type="submit" value="Kirim Umpan Balik">
</form>
```

<pre class="language-php"><code class="lang-php">&#x3C;!-- feedback.php -->
<strong>&#x3C;?php
</strong>if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $nama = htmlspecialchars($_POST['nama']);
  $email = htmlspecialchars($_POST['email']);
  $pesan = htmlspecialchars($_POST['pesan']);

  echo "Terima kasih, $nama. Umpan balik Anda telah diterima.";
}
?>
</code></pre>

***

### **Latihan 7: Penilaian Produk**

**Soal Cerita**: Buat form penilaian produk yang meminta pengguna memilih produk dan memberikan rating dari 1 hingga 5.

**Contoh Code**:

```html
<!-- form_rating.php -->
<form action="rating.php" method="POST">
  <label for="produk">Pilih Produk:</label>
  <select id="produk" name="produk">
    <option value="laptop">Laptop</option>
    <option value="smartphone">Smartphone</option>
    <option value="tablet">Tablet</option>
  </select><br>

  <label for="rating">Rating (1-5):</label>
  <input type="number" id="rating" name="rating" min="1" max="5"><br>

  <input type="submit" value="Kirim Penilaian">
</form>
```

```php
<!-- rating.php -->
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $produk = htmlspecialchars($_POST['produk']);
  $rating = (int)$_POST['rating'];

  echo "Anda memberi rating $rating untuk produk $produk.";
}
?>
```

***

### **Latihan 8: Form Konversi Suhu**

**Soal**: Buat form yang mengonversi suhu dari Celsius ke Fahrenheit.

**Contoh Code**:

```html
<form action="" method="POST">
  <label>Suhu (Celsius):</label>
  <input type="number" name="celsius"><br>
  <input type="submit" value="Konversi">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $celsius = $_POST['celsius'];
  $fahrenheit = ($celsius * 9/5) + 32;
  echo "Suhu dalam Fahrenheit: $fahrenheit";
}
?>
```

***

### **Latihan 9: Validasi Form Login**

**Soal**: Buat form login dengan validasi sederhana (username: admin, password: 1234).

**Contoh Code**:

```html
<form action="" method="POST">
  <label>Username:</label>
  <input type="text" name="username"><br>
  <label>Password:</label>
  <input type="password" name="password"><br>
  <input type="submit" value="Login">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $username = $_POST['username'];
  $password = $_POST['password'];

  if ($username == "admin" && $password == "1234") {
    echo "Login Berhasil!";
  } else {
    echo "Username atau Password salah!";
  }
}
?>
```

***

### **Latihan 10: Form Menghitung Diskon**

**Soal**: Buat form yang menghitung harga setelah diskon diberikan.

**Contoh Code**:

```html
htmlCopy code<form action="" method="POST">
  <label>Harga Barang:</label>
  <input type="number" name="harga"><br>
  <label>Diskon (%):</label>
  <input type="number" name="diskon"><br>
  <input type="submit" value="Hitung Harga Akhir">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $harga = $_POST['harga'];
  $diskon = $_POST['diskon'];
  $harga_akhir = $harga - ($harga * $diskon / 100);
  echo "Harga setelah diskon: Rp $harga_akhir";
}
?>
```

***

### **Latihan 11: Form Penilaian Siswa**

**Soal**: Buat form yang menerima nilai tiga mata pelajaran, kemudian hitung rata-rata dan tampilkan nilai akhir.

**Contoh Code**:

```html
<form action="" method="POST">
  <label>Nilai Matematika:</label>
  <input type="number" name="matematika"><br>
  <label>Nilai Bahasa Indonesia:</label>
  <input type="number" name="bahasa"><br>
  <label>Nilai IPA:</label>
  <input type="number" name="ipa"><br>
  <input type="submit" value="Hitung Rata-Rata">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $matematika = $_POST['matematika'];
  $bahasa = $_POST['bahasa'];
  $ipa = $_POST['ipa'];
  $rata_rata = ($matematika + $bahasa + $ipa) / 3;
  echo "Rata-Rata Nilai: $rata_rata";
}
?>
```

***

### **Latihan 12: M**engonversi Jarak dari Kilometer ke Mil

**Soal Cerita:**

Buat form untuk mengonversi jarak dari kilometer ke mil. Pengguna memasukkan jarak dalam kilometer, lalu PHP menampilkan hasil dalam mil.

**Contoh Code:**

```html
<!-- form_konversi_jarak.php -->
<form action="konversi_jarak.php" method="POST">
  <label for="km">Jarak dalam Kilometer:</label>
  <input type="number" id="km" name="km" step="0.1" required>
  
  <input type="submit" value="Konversi">
</form>
```

```php
<!-- konversi_jarak.php -->
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $km = $_POST['km'];
  $mil = $km * 0.621371;

  echo "$km kilometer = " . number_format($mil, 2) . " mil";
}
?>
```
