PHP disebut bahasa pemrograman server side karena PHP diproses pada komputer server. Hal
ini berbeda dibandingkan dengan bahasa pemrograman client-side seperti JavaScript yang diproses
pada web browser (client).
Pada awalnya PHP merupakan singkatan dari Personal Home Page. Sesuai dengan namanya,
PHP digunakan untuk membuat website pribadi. Dalam beberapa tahun perkembangannya, PHP
menjelma menjadi bahasa pemrograman web yang powerful dan tidak hanya digunakan untuk
membuat halaman web sederhana, tetapi juga website populer yang digunakan oleh jutaan orang
seperti wikipedia, wordpress, joomla, dll.
Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor, sebuah kepanjangan rekursif,
yakni permainan kata dimana kepanjangannya terdiri dari singkatan itu sendiri: PHP: Hypertext
Preprocessor.
PHP dapat digunakan dengan gratis (free) dan bersifat Open Source. PHP dirilis dalam lisensi
PHP License, sedikit berbeda dengan lisensi GNU General Public License (GPL) yang biasa digunakan
untuk proyek Open Source.
Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah
kompilasi dalam penggunaanya.
Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai apache, IIS,
Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah.
Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developer yang
siap membantu dalam pengembangan.
Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena memiliki
referensi yang banyak.
PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux, Unix,
Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat
menjalankan perintah-perintah system.
Yang dibutuhkan untuk menjalankan skrip php adalah php server , bias menggunakan Xampp,
Wamp, Lamp dll.
What is PHP?
Editor :
Notepad
Dreamweaver
Sublime
Brackets
Dll
Install :
Notice : Undefined variable : variable tidak dikenal atau variable tidak ada
Notice : Undefined Constant : apabila variable yang harus nya menggunakan tanda petik tp
tidak menggunakannya sehingga keluar notice tp aplikasi tetap berjalan
Warning
Kurang parameter
Warning
Biasanya error ada disekitar syntax error bias baris sebelum atau sesudah.
Parse Error
Blank Error
Tidak menmpilkan error sama sekali biasanya salah dalam penulisan IF atau Else
MEMULAI PHP
Untuk memulai file php harus menggunakan tag pembuka dan penutup.
Php dapat ditempatkan dimana saja didalam file HTML
<?php
// Ketik Kode PHP disini
?>
<html>
<body>
<?php
// Ketik Kode PHP disini
?>
</body>
</html>
<html>
<body>
<?php
ECHO “Hello World!<br>”;
echo “Hello World!<br>”;
EcHo “Hello World!<br>”;
$color = “Merah”;
echo “Mobil saya berwarna ” . $color . “<br>”;
echo “Rumah saya berwarna ” . $COLOR . “<br>”;
echo “Motor saya berwarna ” . $coLOR . “<br>”;
?>
</body>
</html>
KOMENTAR
<?php
//$txt = "Hello world!";
//$x = 5;
//$y = 10.5;
VARIABEL
A variable starts with the $ sign, followed by the name of the variable
A variable name must start with a letter or the underscore character
A variable name cannot start with a number
<?php
$tx = "Hello world!";
<?php
$x = 5;
$txt1 = "I Love";
$y = 10.5;
$txt2 = "STMIK Sumedang";
echo
$txt “Hallo ”.$txt1.$txt2;
= "STMIK Sumedang";
?>
echo "I love $txt!";
?>
<?php
$x = 5;
$y = 4;
echo $x + $y;
?>
Menyatukan 2 variabel
OPERATOR
Operator Aritmetika
TYPE DATA
String
Integer
Float (floating point numbers - also called double)
Boolean
Array
Object
NULL
Resource
STRING
<?php
echo strlen("Hello world!"); // outputs 12
?>
<?php
echo str_word_count("Hello world!"); // outputs 2
?>
<?php
echo strrev("Hello world!"); // outputs !dlrow olleH
?>
Replace String
<?php
echo str_replace("world", "Dolly", "Hello world!"); // outputs Hello Dolly!
?>
<?php
echo strtoupper("Hello WORLD!");
?>
<?php
echo strtoupper("Hello WORLD!");
?>
Sintaks
date(format,timestamp)
Parameter Keterangan
timestamp Optional. Specifies a timestamp. Default is the current date and time (as a
timestamp)
TIMESTAMP/DATE/ WAKTU
Timestamp adalah jumlah detik sejak January 1, 1970 00:00:00 GMT. Juga dikenal sebagai Unix Timestamp.
Format Tanggal
Contoh Program :
<?php
echo date("Y/m/d");
echo "<br />";
echo date("Y.m.d");
echo "<br />";
echo date("Y-m-d");
?>
Fungsi mktime() akan memberikan nilai Unix timestamp untuk tanggal tertentu.
Sintaks
mktime(hour,minute,second,month,day,year,is_dst)
Program14-2.php
<?php
$besok = mktime(0,0,0,date("m"),date("d")+1,date("Y"));
echo "Besok Adalah ".date("Y/m/d/", $besok);
?>
output:
Besok Adalah 2018/07/12
Jika running menggunakan Xampp terjadi error date time kemungkinan ada perbedaan waktu antara
xampp dan waktu lokal atau komputer anda, maka lakukan setting manual pada :
C:\xampp\php\php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = "Asia/Jakarta"
Statement IF
<?php
$t = date("H");
<?php
$t = date("H");
if ($t < "20") {
echo "Have a good day!";
} else {
echo "Have a good night!";
}
?>
Statement IF...Elseif...else
<?php
$t = date("H");
Statement Switch
<?php
$favcolor = "red";
switch ($favcolor) {
case "red":
echo "Your favorite color is red!";
break;
case "blue":
echo "Your favorite color is blue!";
break;
case "green":
echo "Your favorite color is green!";
break;
default:
echo "Your favorite color is neither red, blue, nor green!";
}
?>
<?php
$x = 1;
while($x <= 5) {
echo "The number is: $x <br>";
$x++;
}
?>
<?php
for ($x = 0; $x <= 10; $x++) {
echo "The number is: $x <br>";
}
?>
<?php
$colors = array("red", "green", "blue", "yellow");
Function /Fungsi
<?php
function writeMsg() {
echo "Hello world!";
}
Array
Array digunakan untuk menyimpan satu atau lebih nilai pada sebuah nama variabel.
Jenis-jenis Array
Numeric Array
Contoh 1
$names = array("Budi","Maman","Asep");
Contoh 2
Pada contoh ini kita memberikan nilai pada kunci ID secara manual.
<?php
$names[0] = "Budi";
$names[1] = "Maman";
$names[2] = "Asep";
echo $names[1] . " dan " . $names[2] .
" adalah teman ". $names[0];
?>
Associative Arrays
Contoh 1
Pada contoh ini kita menggunakan sebuah array untuk memberikan nilai umur pada beberapa orang
yang berbeda.
Contoh 2
Pada contoh ini sama dengan diatas, hanya saja kita memperlihatkan cara yang lain dalam membuat
array.
$ages['Budi'] = "32";
$ages[‘Maman’] = "30";
$ages['Asep'] = "34";
<?php
$ages['Budi'] = "32";
$ages['Maman'] = "30";
$ages['Asep'] = "34";
echo "Umur Budi adalah " . $ages['Budi'] . " Tahun.";
?>
Output program:
Multidimensional Arrays
$families = array
(
"Keluarga1"=>array
(
"Budi",
"Maman",
"Asep",
),
"Keluarga2"=>array
(
Array di atas akan terlihat seperti di bawah ini jika dituliskan ke output.
Array
(
[Keluarga1] => Array
(
[0] => Budi
[1] => Maman
[2] => Asep
)
[Keluarga2] => Array
(
[0] => Glenn
)
[Keluarga3] => Array
(
[0] => Andi
[1] => Rudi
[2] => Zaenal
)
)
FORM HANDLING
Perintah $_GET dan $_POST digunakan untuk mengirim informasi dari form, seperti input user.
<html>
<body>
</body>
</html>
<html>
<body>
</body>
</html>
Maka Outputnya adalah menampilkan text yang diinput pada halaman input.php
MODUL PHP 2018 DAVID SETIADI,S.KOM.,M.T.
Untuk penggunaan GET sama saja tinggal mengganti POST dengan GET
<html>
<body>
</body>
</html>
</body>
</html>
Maka Outputnya adalah menampilkan text yang diinput pada halaman input.php
Mempunyai pengertian bahwa metode ini digunakan untuk memparsing hasil inputan form
untuk diolah lebih lanjut, tetapi tidak menampilkan query string pada address bar, sehingga lebih aman
dibandingkan method GET yang akan terlihat pada address bar. Method POST akan sangat berguna
penggunaannya untuk halaman-halaman yang membutuhkan keamanan lebih, karena data inputan kita
tidak akan tampil pada address bar browser (disini kelebihan menggunakan Metode POST).
Nilai parsing tidak ditampilkan dalam address bar dan langsung di proses ketempat yang sudah
dibuat. Sebenarnya nilai dari parshingan tetap ada tetapi tidak tampak didalam address bar karena
valuenya bekerja dibelakang layar (backand). Disinilah keunggulan mengguanakn Method POST.
Sedangkan GET adalah metode pengiriman data mengguanakan query string atau menampilkan
nilainya pada address bar. Jadi semua nilai pada form akan dikirim kesisi server yang kemudian diterima
oleh file tertentu dengan ketentuan nilai form tersebut akan tampil didalam address bar browser/URL
browser. Untuk suatu keamanan method POST lebih aman dari method GET.
Digunakan untuk memvalidasi inputan form yang bisa dilakukan di sisi client dan di sisi server. Disisi
client biasanya dilakukan di browser dengan menambahkan kode validasi pada script html, misal
required (inputan wajib disii). Berbeda dengan validasi disisi Server, yaitu data divalidasi setelah sampai
<!DOCTYPE html>
<html>
<head>
<title>Membuat Form Validasi Dengan PHP</title>
</head>
<body>
<h1>Membuat Form Validasi Dengan PHP </h1>
<?php
if(isset($_GET['nama'])){
if($_GET['nama'] == "kosong"){
echo "<h4 style='color:red'>Nama Belum Di Masukkan !</h4>";
}
}
?>
</body>
</html>
Cek.php
<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>
Server Side Includes (SSI) digunakan untuk menyimpan fungsi, header, footer, atau elemen-elemen yang
dapat digunakan pada halaman yang berlainan. Server Side Includes ,
Fungsi include()
Fungsi include() akan mengambil semua teks pada file include dan mengkopinya ke file tujuan.
Fungsi require()
Fungsi require() sama dengan include(), tetapi berbeda dalam cara penanganan kesalahan.
Fungsi include() akan menghasilkan peringatan (dan program akan melanjutkan ekseskusinya)
sedangkan fungsi require() akan menghasilkan fatal error dan menghentikan program.
Contoh :
Buat footer.php
<?php
echo "<p>Copyright © 1999-" . date("Y") . " stmik-sumedang.ac.id</p>";
?>
Buat welcome.php
<html>
<body>
</body>
</html>
FILE HANDLING
Mode Keterangan
r Read only. Starts at the beginning of the file
r+ Read/Write. Starts at the beginning of the file
w Write only. Opens and clears the contents of file; or creates a new file if it doesn't exist
w+ Read/Write. Opens and clears the contents of file; or creates a new file if it doesn't exist
a Append. Opens and writes to the end of the file or creates a new file if it doesn't exist
a+ Read/Append. Preserves file content by writing to the end of the file
x Write only. Creates a new file. Returns FALSE and an error if file already exists
x+ Read/Write. Creates a new file. Returns FALSE and an error if file already exists
Contoh :
<?php
$myfile = fopen("kamus.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>
Catatan: Kita tidak dapat membaca file yang terbuka dalam mode w, a, dan x!
if (feof($file)) echo "End of file";
<?php
$file = fopen("welcome.txt", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
{
echo fgets($file). "<br />";
}
fclose($file);
?>
<?php
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
while (!feof($file))
{
echo fgetc($file);
}
fclose($file);
?>
FILE UPLOAD
Digunakan untuk mengupload file ke server menggunakan PHP, tetapi ini akan sangat berbahaya jika
scriptnya terbuka tanpa batasan session atau hak akses karena berpotensi mudah di Hack.
</body>
</html>
?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
?>
Berikut skrip lengkap untuk memfilter duplikat file, size dan type file.
COOKIES
SESSION
Karena xampp versi baru sudah migrasi ke ekstensi mysqli /PDO maka harus mengaktifkan script
extension=php_mysql.dll pada php.ini (lokasi : xampp\php\php.ini) agar dapat merunning script
mysql.
Jika masih menggunakan xampp versi 173 ke bawah maka fitur ini sudah aktif secara otomatis, untuk
mengaktifkan nya ada di baris 872 pada php.ini
<?php
$host = "localhost"; //nama host
$user = "root"; //username phpMyAdmin
$pass = ""; //password phpMyAdmin
$name = "db_crud"; //nama database
Buatlah file dengan nama index.php, kemudian isi dengan script dibawah ini :
<!DOCTYPE html>
<html>
<head>
<title>CRUD PHP</title>
</head>
<body>
<h2>CONTOH CRUD</h2>
<h3>Data Mahasiswa</h3>
<?php
include('koneksi.php');
$query = mysql_query("SELECT * FROM tbl_mhs ORDER BY nim DESC") or die(mysql_error());
if(mysql_num_rows($query) == 0){
echo '<tr><td colspan="6">Tidak ada data!</td></tr>';
}else{
$no = 1;
while($data = mysql_fetch_assoc($query)){
echo '<tr>';
echo '<td>'.$no.'</td>';
echo '<td>'.$data['nim'].'</td>';
echo '<td>'.$data['nama'].'</td>';
echo '<td>'.$data['jurusan'].'</td>';
echo '<td><a href="edit.php?id='.$data['id'].'">Edit</a> / <a
href="hapus.php?id='.$data['id'].'" onclick="return confirm(\'Yakin?\')">Hapus</a></td>';
echo '</tr>';
$no++;
}
?>
</table>
</body>
</html>
Buatlah file dengan nama tambah.php kemudian isi dengan script dibawah ini:
<!DOCTYPE html>
<html>
<head>
<title>CRUD PHP</title>
</head>
<body>
<h2>CONTOH CRUD</h2>
<p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p>
<h3>Tambah Data Mahasiswa</h3>
<form action="tambah-proses.php" method="post">
<table cellpadding="3" cellspacing="0">
<tr>
<td>NIM</td>
<td>:</td>
<td><input type="text" name="nim" size="30" required></td>
</tr>
<tr>
<td>Nama</td>
<td>:</td>
<td><input type="text" name="nama" size="30" required></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td>
<select name="jurusan" required>
<option value="">Pilih Jurusan</option>
<option value="Teknik Informatika">Teknik Informatika</option>
<option value="Sistem Informasi">Sistem Informasi</option>
<option value="Manajemen Informatika">Manajemen Informatika</option>
</select>
</td>
</tr>
<tr>
<td> </td>
<td></td>
<td><input type="submit" name="tambah" value="Tambah"></td>
</tr>
</table>
</form>
</body>
</html>
Buatlan file dengan nama tambah-proses.php, kemudian isi dengan script dibawah ini :
<!DOCTYPE html>
<?php
<html>
if(isset($_POST['tambah'])){
<head>
include('koneksi.php');
<title>CRUD PHP</title>
$nim
</head> = $_POST['nim'];
$nama = $_POST['nama'];
<body>
$jurusan
<h2>CONTOH= CRUD</h2>
$_POST['jurusan'];
<p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p>
$input
<h3>Edit= mysql_query("INSERT
Data Siswa</h3> INTO tbl_mhs VALUES(NULL, '$nim', '$nama', '$jurusan')") or
die(mysql_error());
<?php
include('koneksi.php');
if($input){
$id = $_GET['id'];
echo
$show'Data berhasil di tambahkan!
= mysql_query("SELECT * FROM';
tbl_mhs WHERE id='$id'");
header("Refresh:2; url=index.php");
if(mysql_num_rows($show) == 0){
echo
echo '<a href="tambah.php">Kembali</a>';
'<script>window.history.back()</script>';
}else{
}else{
echo
$data'Gagal menambahkan data! ';
= mysql_fetch_assoc($show);
header("Refresh:2; url=index.php");
}
echo
?> '<a href="tambah.php">Kembali</a>';
}
<form action="edit-proses.php" method="post">
}else{
<input type="hidden" name="id" value="<?php echo $id; ?>">
echo '<script>window.history.back()</script>';
<table cellpadding="3" cellspacing="0">
}
<tr>
?>
<td>NIM</td>
<td>:</td><td><input type="text" name="nim" value="<?php echo $data['nim']; ?>" required></td>
</tr>
<tr>
<td>Nama Lengkap</td>
<td>:</td>
<td><input type="text" name="nama" size="30" value="<?php echo $data['nama']; ?>" required></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td>
<select name="jurusan" required>
<option value="">Pilih Jurusan</option>
<option value="Teknik Informatika" <?php if($data['jurusan'] == 'Teknik Informatika'){ echo 'selected'; }
?>>Teknik Informatika</option>
<option value="Sistem Informasi" <?php if($data['jurusan'] == 'Sistem Informasi'){ echo 'selected'; }
?>>Sistem Informasi</option>
<option value="Manajemen Informatika" <?php if($data['jurusan'] == 'Manajemen Informatika'){ echo
'selected'; } ?>>Manajemen Informatika</option>
</select>
</td>
</tr>
<tr>
<td> </td>
<td></td>
<td><input type="submit" name="simpan" value="Simpan"></td>
</tr>
</table>
</form>
</body>
</html>
Buatlah file dengan nama edit.php, kemudian isi dengan script dibawah ini:
<?php
if(isset($_POST['simpan'])){
include('koneksi.php');
$id = $_POST['id'];
$nim = $_POST['nim'];
$nama = $_POST['nama'];
$jurusan = $_POST['jurusan'];
$update = mysql_query("UPDATE tbl_mhs SET nim='$nim', nama='$nama',
jurusan='$jurusan' WHERE id='$id'") or die(mysql_error());
if($update){
echo 'Data berhasil di simpan! ';
header("Refresh:2; url=index.php");
echo '<a href="index.php">Kembali</a>';
}else{
echo 'Gagal menyimpan data! ';
header("Refresh:2; url=index.php");
echo '<a href="edit.php?id='.$id.'">Kembali</a>';
}
}else{
echo '<script>window.history.back()</script>';
}
?>
Buatlah file dengan nama hapus.php, kemudian isi denga script dibawah ini :
<?php
if(isset($_GET['id'])){
include('koneksi.php');
$id = $_GET['id'];
$cek = mysql_query("SELECT id FROM tbl_mhs WHERE id='$id'") or die(mysql_error());
if(mysql_num_rows($cek) == 0){
echo '<script>window.history.back()</script>';
}else{
$del = mysql_query("DELETE FROM tbl_mhs WHERE id='$id'");
if($del){
echo 'Data mahasiswa berhasil di hapus! ';
header("Refresh:2; url=index.php");
echo '<a href="index.php">Kembali</a>';
}else{
echo 'Gagal menghapus data! ';
header("Refresh:2; url=index.php");
echo '<a href="index.php">Kembali</a>';
}
}
}else{
echo '<script>window.history.back()</script>';
}
?>
<!DOCTYPE html>
<html>
<head>
<title>CRUD PHP</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h2>CONTOH CRUD</h2>
<h3>Data Mahasiswa</h3>
<?php
include('koneksi.php');
@$cari=$_POST['cari'];
$query = mysql_query("SELECT * FROM tbl_mhs where nama like '%$cari%' or nim like '%$cari%'") or
die(mysql_error());
if(mysql_num_rows($query) == 0){
echo '<tr><td colspan="6">Tidak ada data!</td></tr>';
}else{
$no = 1;
while($data = mysql_fetch_assoc($query)){
echo '<tr>';
echo '<td>'.$no.'</td>';
echo '<td>'.$data['nim'].'</td>';
echo '<td>'.$data['nama'].'</td>';
echo '<td>'.$data['jurusan'].'</td>';
echo '<td><a href="edit.php?id='.$data['id'].'">Edit</a> / <a
href="hapus.php?id='.$data['id'].'" onclick="return confirm(\'Yakin?\')">Hapus</a></td>';
echo '</tr>';
$no++;
}
?>
</table>
</body>
</html>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
text-align: left;
padding: 8px;
}
tr:nth-child(even){background-color: #f2f2f2}
th {
background-color: #4CAF50;
color: white;
}
a:link, a:visited {
background-color: #058821;
color: white;
padding: 8px 25px;
text-align: center;
text-decoration: none;
display: inline-block;
}
a:hover, a:active {
background-color: #00B727;
}
Tambahkan script dibawah ini diantara tag <head> pada halaman yang ingin dipasang css
Yang pertama harus di lakukan adalah membuat halaman belakang/ halaman admin/ Frontend,
Dimana berfungsi untuk memisahkan halaman untuk user dengan halaman untuk admin, supaya
keamanan lebih terjaga.
1. Halaman login
Halaman login dibuat untuk membatasi hak akses terhadap data website, sehingga hanya user
yang memiliki hak akses yang dapat merubah data pada sebuah frontEnd website.
Berikut adalah langkah-langkah membuat halaman login :
Buat tabel dengan nama users , tabel ini digunakan untuk menyimpan informasi login
admin. Kemudian buatlah field id,username,password dan status
Buat folder baru didalam htdocs dengan nama web kemudian buat folder baru
didalamnya dengan nama login , agar manajemen file frontend dan backend terpisah.
Buat file index.php didalam folder login, berfungsi untuk halaman default sebelum
masuk ke halaman dashboard harus melalui halaman login terlebih dahulu.
<?php
include('login.php');
if(isset($_SESSION['login_user'])){
header("location: dashboard.php");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Login Admin</title>
<!-- Skrip CSS -->
<link rel="stylesheet" href="login.css"/>
</head>
<body>
<div class="login-page">
<div class="form">
<h2>Login Admin</h2><hr/>
<form class="login-form" action="" method="post">
<input type="text" id="name" name="username" placeholder="username"/>
<input type="password" id="password" name="password"
placeholder="password"/>
<button name="submit" type="submit" id="submit">Login</button>
</form>
</div>
</div>
</body>
</html>
<?php
session_start();
$error='';
if (isset($_POST['submit'])) {
if (empty($_POST['username']) || empty($_POST['password'])) {
$error = "Username or Password is invalid";
}
else
{
include('koneksi.php');
$username=$_POST['username'];
$password=$_POST['password'];
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
$query = mysql_query("select * from users where password='$password' AND
username='$username'", $connection);
$rows = mysql_num_rows($query);
if ($rows == 1) {
$_SESSION['login_user']=$username;
header("location: dashboard.php");
} else {
$error = "Username atau Password belum terdaftar";
}
mysql_close($connection);
}
}
?>
Buat file logout.php didalam folder login, berfungsi untuk menghancurkan session
sehingga jika sudah logout user tidak dapat masuk ke halaman dashboard lagi, untuk
masuk kembali user harus melakukan login ulang.
<?php
session_start();
if(session_destroy())
{
header("Location: index.php");
}
?>
Buat file koneksi.php didalam folder login, berfungsi untuk membuat koneksi ke
database, sehingga untuk membuat koneksi ke tiap halaman cukup menyertakan
koneksi.php kedalamnya menggunakan script include(koneksi.php);
<?php
$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("db_web", $connection);
?>
Buat file login.css didalam folder login, untuk mempercantik halaman login
.form {
position: relative;
z-index: 1;
background: #FFFFFF;
max-width: 360px;
margin: 0 auto 100px;
padding: 45px;
text-align: center;
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}
.form input {
font-family: "Roboto", sans-serif;
outline: 0;
background: #f2f2f2;
width: 100%;
border: 0;
margin: 0 0 15px;
padding: 15px;
box-sizing: border-box;
font-size: 14px;
}
.form button {
font-family: "Roboto", sans-serif;
text-transform: uppercase;
outline: 0;
background: #4CAF50;
width: 100%;
border: 0;
padding: 15px;
color: #FFFFFF;
font-size: 14px;
-webkit-transition: all 0.3 ease;
transition: all 0.3 ease;
cursor: pointer;
}
.form button:hover,
.form button:active,
.form button:focus {
background: #43A047;
}
.form .message {
margin: 15px 0 0;
color: #b3b3b3;
font-size: 12px;
}
.form .message a {
color: #4CAF50;
text-decoration: none;
}
.form .register-form {
display: none;
}
.container:before,
.container:after {
content: "";
display: block;
clear: both;
}
.container .info {
margin: 50px auto;
text-align: center;
}
.container .info h1 {
margin: 0 0 15px;
padding: 0;
font-size: 36px;
font-weight: 300;
color: #1a1a1a;
}
body {
background: #76b852;
/* fallback for old browsers */
background: -webkit-linear-gradient(right, #76b852, #8DC26F);
background: -moz-linear-gradient(right, #76b852, #8DC26F);
background: -o-linear-gradient(right, #76b852, #8DC26F);
background: linear-gradient(to left, #76b852, #8DC26F);
font-family: "Roboto", sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
Membuat CRUD untuk isian halaman depan website agar manajemen konten web lebih mudah,
contoh sebagai berikut :
Proses pembuatan crud sama seperti pada modul sebelumnya, tapi manajemen file nya dibuat
folder terpisah agar lebih mudah untuk dipahami. Buat folder baru didalam folder login dengan
nama berita.
Jika ingin membuat modul baru maka anda tinggal mengcopy satu folder berita ke dalam folder
baru, misalkan folder pengumuman. Kemudian edit sesuai kebutuhan.