Kamis, 01 November 2018

PHP MYSQL

Pada latihan kali ini kita akan membuat sistem input data nilai ujian menggunakan php, 
ketentuannya adalah sebagai berikut:
1. tabel yang dibutuhkan:
nama tabel: nilai
fieldnya:
id: int(3) auto increment not null yes 
nama_siswa: maksimal 30 karakter, harus diisi
kelas: maksimal 2 karakter 
pelajaran: maksimal 25 karakter 
nilai

2. halaman yg dibutuhkan:
- halaman list nilai, berisi:
nomer, nama, kelas, pelajaran dan nilai. juga link menuju input data, update data dan juga hapus.
- halaman input, berisi:
input nama, kelas, pelajaran dan nilai
untuk input kelas dan pelajaran, dibuat dropdown aja jadi ga perlu ngetik lagi
list pelajarannya: javascript, php, desain, database
list kelasnya: 1a,1b,2a,2b,3a,3b,3c,3d
- halaman edit, berisi:
edit pelajaran dan nilai sadja. tapi ditampilkan juga nama dan kelasnya walaupun tidak bisa diedit. caranya seperti yang saya tunjukkan pada pertemuan terakhir xD

3. selamat mengerjakan :))

4. kalo ada pertanyaan silakan komen aja disini, biar yang lain liat juga


jawab :


1. koneksi.php



<?php
$servername = "localhost";
$username   = "root";
$password   = "123";
$dbname     = "latihan";
// Create connection
$connect = mysqli_connect($servername, $username, $password, $dbname);

// Check connection
if (!$connect) {
    die("Connection failed: " . mysqli_connect_error());//untuk memunculkan eror
}
$sql = "CREATE TABLE nilai (
id INT(3) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
nama_siswa VARCHAR(30) NOT NULL,
kelas CHAR(2) NULL,
pelajaran VARCHAR(25) NULL,
nilai int(3)
)";
mysqli_query($connect, $sql)
// if (mysqli_connect_error()) {
//     die("Database connection failed: " . mysqli_connect_error());
// }
// echo "Connected successfully";
?>

2. index.php


<html>
 <head>
  <title>TUGAS TABEL NILAI</title>
 </head>
 <body>
  <a href="inputdata2.php">Input Data</a>
  <br>
  <br>
  <table border="1" cellpadding="10">
   <tr>
    <td>No</td>
    <td>Nama Siswa</td>
    <td>Kelas</td>
    <td>Pelajaran</td>
    <td>Nilai</td>
    <td></td>
   </tr>
   <?php
   include 'koneksi3.php';
   $nomor  = 1;
   $sql    = "select * from nilai";
   $result = mysqli_query($connect,$sql);// untuk menghubungkan databases melalui $connect dengan isinya melalui $sql
   if(mysqli_num_rows($result)>0){// jika nggak ada datanya maka while tidak di jalankan
    while ($row = mysqli_fetch_assoc($result)) {// untuk memunculkan dalam bentuk rapi, mengambil dan dijadikan erray associative
     echo "
     <tr>
      <td>".$nomor++."</td>
      <td>".$row['nama_siswa']."</td>
      <td>".$row['kelas']."</td>
      <td>".$row['pelajaran']."</td>
      <td>".$row['nilai']."</td>
      <td>
       <a href='edit.php?id=".$row['id']."'>Edit</a>
       <a href='delete.php?id=".$row['id']."' onclick='javascript:return confirm(\"Apakah anda yakin ingin menghapus data ini?\")'>Hapus</a>
      </td>
     </tr>
     ";
    }
   }
   ?>
  </table>
 </body>
</html>

3. input_data.php

<html>
 <head>
  <title>Input Data</title>
  
 </head>
 <body>
 <form action="proses_input2.php" method="POST">
  <table>
  <tr>
   <td><label for="nama">Nama Siswa</label></td>
   <td>:</td>
   <td><input type="text" name="nama" id="nama"></td>
  </tr>   
  <tr> 
   <td><label for="kelas">Kelas</label></td>
   <td>:</td>
   <td>
    <select name="kelas" id="kelas">
    <option value="1a">1a</option>
    <option value="1b">1b</option>
    <option value="2a">2a</option>
    <option value="2b">2b</option>
    <option value="3a">3a</option>
    <option value="3b">3b</option>
    <option value="3c">3c</option>
    <option value="3d">3d</option>
    </select>
   </td>
  </tr>
  <tr>
   <td><label for="pelajaran">Pelajaran</label></td>
   <td>:</td>
   <td>
    <select name="pelajaran" id="pelajaran">
    <option value="javascript">Javascript</option>
    <option value="php">PHP</option>
    <option value="desain">Desain</option>    
    <option value="database">Database</option>
    </select>   
   </td>
  </tr>
  <tr> 
   <td><label for="nilai">Nilai</td>
   <td>:</td>
   <td><input type="text" name="nilai" id="nilai"></td>
  </tr>
  <tr>
   <td></td><td></td><td><input type="submit" value="Submit"></td>
  </tr>  
  </table> 
 </form>
 </body>
</html>
4. proses_input.php

<?php
include 'koneksi3.php';
$nama          = $_POST['nama'];
$kelas         = $_POST['kelas'];
$pelajaran     = $_POST['pelajaran'];
$nilai        = $_POST['nilai'];

$sql = "insert into nilai (nama_siswa, kelas, pelajaran, nilai) values ('$nama','$kelas','$pelajaran','$nilai')";
mysqli_query($connect,$sql);
header('location:index2.php');//untuk mengembalikan index.php
?>

5. edit.php

<html>
 <head>
  <title>Edit Data</title>

 </head>
 <body>
  <?php
  include 'koneksi3.php';
  $ID     = $_GET['id'];
  $sql    = "select * from nilai where id=$ID";
  $result = mysqli_query($connect,$sql);
  $row    = mysqli_fetch_assoc($result);
  ?>
  <form action="proses_edit.php" method="POST">
   <input type="hidden" name="id" value="<?php echo $ID; ?> " >
   Nama : <br>
   <input type="text" name="nama" value="<?php echo $row['nama_siswa']; ?>"disabled><br>
   Kelas : <br>
   <input type="text" name="kelas" value="<?php echo $row['kelas']; ?>"disabled><br>
   Pelajaran : <br>
    <select name="pelajaran" value="<?php echo $row['pelajaran']; ?>">
    <option value="javascript">Javascript</option>
    <option value="php">PHP</option>
    <option value="desain">Desain</option>    
    <option value="database">Database</option>
    </select><br>
   Nilai : <br>
   <input type="text" name="nilai" value="<?php echo $row['nilai']; ?>"><br>
   <input type="submit" value="Submit">
  </form>
 </body>
</html>
6. proses_edit.php
<?php
include 'koneksi3.php';
$ID            = $_POST['id'];
$nama          = $_POST['nama'];
$kelas         = $_POST['kelas'];
$pelajaran     = $_POST['pelajaran'];
$nilai         = $_POST['nilai'];

$sql = "UPDATE nilai SET pelajaran = '$pelajaran', nilai = '$nilai' WHERE id = '$ID'";
mysqli_query($connect,$sql);
header('location:index2.php');
?>

7. delete.php



<?php
include 'koneksi3.php';
$ID    = $_GET['id'];

$sql = "DELETE FROM nilai WHERE id = '$ID'";
mysqli_query($connect,$sql);
header('location:index2.php');
?>

Tidak ada komentar:

Posting Komentar

Perintah ( QUERY ) HTML

Macam macam perintah ( QUERY ) HTML 1. Document Summary <html> ... </html> adalah elemen akar di dalam htm...