Junior Web Developer

Pelatihan junior web developer oleh BNSP (Badan Nasional Sertifikasi Profesi)

6 Juni 2024
2 min read
Gambar sampul untuk Junior Web Developer

Latar Belakang

Pelatihan web junior dengan mempelajari hal sbg :

  • tailwind css
  • php
  • node js
Blog Image

Unit Kompetensi

Unit Kompetensi Latihan :

  • Mengimplementasikan user interface.
  • Mengimplementasikan koneksi frontend ke backend
  • Menggunakan version control git
  • Menerapkan perintah eksekusi bahasa pemrograman berbasis teks, grafik, dan multimedia.
  • Menyusun fungsi, file, atau sumber daya pemrograman yang lain dalam organisasi yang rapi.
  • Menulis kode dengan prinsip sesuai guidelines dan best practices.
  • Mengimplementasikan pemrograman terstruktur.
  • Menggunakan Library atau komponen Pre-Existing.

Hari 1

  • Mengimplementasikan UI dengan menggunakan html lalu menggunakan konsep tailwind css
Blog Image

Pembelajaran yang didapat :

  • Memvalidasi form dari sisi client dan server side
  • Belajar footer agar diganti setiap tahunnya
  • Kembali lagi ke php native ygy tidak masalah ygy

Belajar php native mengupload gambar lalu disimpan ke database

<?php

include 'koneksi/koneksi.php';

function select($query){
 global $conn;

 $result = mysqli_query($conn, $query);
 $rows = [];

 while($row = mysqli_fetch_assoc($result)){
 $rows[] = $row;
 }
 
 return $rows;
}

function tambah_pegawai($post, $files){
 global $conn;
 
 if (empty($post['nama_pegawai']) || empty($post['bidang_pegawai']) || empty($post['no_telepon'])) {
 return 'Semua field harus diisi';
 }

 $nama = $post['nama_pegawai'];
 $bidang = $post['bidang_pegawai'];
 $no_telpon = $post['no_telepon'];

 if($files["foto"]["error"] === 4){
 echo"
 <script
 alert('Gambar Teknisi Belum Di Upload');
 
 
 ";
 return false;
 }
 $fileName = $files["foto"]["name"];
 $fileSize = $files["foto"]["size"];
 $tmpName = $files["foto"]["tmp_name"];

 $validImageExtension = ['jpg', 'jpeg', 'png'];
 $imageExtension = strtolower(pathinfo($fileName, PATHINFO_EXTENSION));

 if(!in_array($imageExtension, $validImageExtension)){
 echo "
 
 alert('Gambar harus jpg, jpeg, png');
 
 ";

 return false;
 }

 if($fileSize > 5000000){
 echo "
 
 alert('Gambar tidak boleh lebih dari 5MB');
 
 ";

 return false;
 }

 $newImageName = uniqid();
 $newImageName .= ".".$imageExtension;

 move_uploaded_file($tmpName, "./foto/".$newImageName );
 mysqli_query($conn, "INSERT INTO pegawai (foto,nama_pegawai, bidang_pegawai, no_telpon) VALUES( '$newImageName', '$nama', '$bidang', '$no_telpon')");


 return mysqli_affected_rows($conn);
}
function edit_pegawai($post){
 global $conn;

 $id = $post['id'];
 $nama = $post['nama_pegawai'];
 $bidang = $post['bidang_pegawai'];
 $no_telpon = $post['no_telepon'];

 mysqli_query($conn, "UPDATE pegawai SET nama_pegawai = '$nama', bidang_pegawai = '$bidang', no_telpon = '$no_telpon' WHERE id = '$id'");


 return mysqli_affected_rows($conn);
}
function delete_pegawai($id){
 global $conn;

 mysqli_query($conn, "DELETE FROM pegawai WHERE id = '$id'");

 return mysqli_affected_rows($conn);
}

Hari 3

  • Upload file menggunakan php native
  • Implementasi UI/UX ke dalam HTML
Blog Image