SlideShare a Scribd company logo
PHP – ACCESSING
MYSQL DATABASE
PERTEMUAN V
Teknik Informatika - Universitas Kahuripan Kediri 2
Teknik Informatika - Universitas Kahuripan Kediri 3
Koneksi Database
 PHP – MySql installed
 MySql telah running (cek xampp control panel)
 Database
 Tabel
 Query  SQL (Structured Query Language)
 Script PHP untuk pengolahan database
 Output (HTML)
Teknik Informatika - Universitas Kahuripan Kediri 4
Koneksi Database
 Berikut Langkah-langkah untuk Koneksi
Database menggunakan PHP
1. Koneksi ke server Database
2. Memilih database
3. Membuat perintah SQL (sql command)
4. Eksekusi command / perintah
5. Mengakses hasil eksekusi perintah
6. Melihat hasil output
7. Menutup sambungan
Teknik Informatika - Universitas Kahuripan Kediri 5
Contoh implementasi
 Form login
Login user dicocokan dengan data input dari user
 Form Input Data
Input Data dari User
 List tabel
Menampilkan data dalam sebuah tabel misalkan
data keuangan, list nilai dan sebagainya
 Detail data
Shoping cart
MYSQL
Teknik Informatika - Universitas Kahuripan Kediri 7
SQL
 SQL (Structured Query Language) adalah bahasa yang
khusus digunakan untuk mengoperasikan database.
 Untuk memudahkan, SQL query dapat dikelompokkan
menjadi tiga jenis :
 Query untuk mengelola data
 Query untuk mengakses data dalam 1 tabel
 Query untuk mengakses data lebih dari 1 tabel
 SQL Manager : Software yang digunakan untuk
mengolah database dalam server
 PHPMyAdmin
 SQLyog
 EMS
Teknik Informatika - Universitas Kahuripan Kediri 8
Query Untuk Mengelola Database
 Yang termasuk dalam kelompok query ini
adalah :
 Membuat database
 Menghapus database
 Membuat tabel
 Memodifikasi tabel
 Menghapus tabel
 Menambah user (user database)
 Mengatur permission (user database)
 Menghapus user (user database)
Teknik Informatika - Universitas Kahuripan Kediri 9
Query u/ Mengelola Database (cont.)
 Membuat database
CREATE DATABASE <nama database>
 Menghapus database
DROP DATABASE
 Membuat tabel
CREATE TABLE userTable(
UserId INT (3),
UserName VARCHAR (50),
Password VARCHAR (50),
NamaLengkap VARCHAR (50)
);
 Menghapus tabel
DROP TABLE <nama tabel>;
Teknik Informatika - Universitas Kahuripan Kediri 10
Query u/ 1 Tabel
 Query satu tabel digunakan untuk mengelola data
dalam satu tabel
 Beberapa perintah yang dapat digunakan :
Fungsi Query
Input data INSERT
Modifikasi data UPDATE
Mengambil data SELECT
Menghapus data DELETE
Menghitung banyaknya data COUNT
Menjumlah data SUM
Menghitung rata-rata AVG
dll
Teknik Informatika - Universitas Kahuripan Kediri 11
Query u/ 1 Tabel (cont.)
 SQL INSERT
INSERT INTO userTable VALUES (
1,
‘ukk',
‘ukk123',
‘Teknik Informatika UKK'
);
 SQL SELECT
SELECT *
FROM UserTable
WHERE UserId=1;
 SQL UPDATE
UPDATE userTable
SET password=’test’
WHERE UserName=’ukk’;
 SQL DELETE
DELETE FROM UserTable
WHERE UserName=‘ukk’
Teknik Informatika - Universitas Kahuripan Kediri 12
Latihan
 Buat table: Biodata
UserId INT (3),
NamaLengkap VARCHAR (50)
TglLahir DATE
Alamat VARCHAR (50)
AsalSMA VARCHAR (50)
JurusanSMA VARCHAR (50)
====
Isi 5 data table : Biodata
Dan 3 data table UserTable
 Membuat database
CREATE DATABASE <nama database>
Create database dataku
 Menghapus database
DROP DATABASE
 Membuat tabel
CREATE TABLE biodata(
UserId INT (3),
UserName VARCHAR (50),
Password VARCHAR (50),
NamaLengkap VARCHAR (50)
);
 Menghapus tabel
DROP TABLE <nama tabel>;
Teknik Informatika - Universitas Kahuripan Kediri 13
Query u/ Banyak Tabel
 Kelompok Query ini digunakan untuk
mengambil data dari lebih dari 1 tabel
menggunakan JOIN.
SELECT * FROM
UserTable JOIN Biodata
ON UserTabel.UserId =
Biodata.UserId
KONEKSI PHP
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
 Untuk melakukan koneksi PHP dengan MySQL
digunakan perintah: mysqli_connect() -> skrip PHP.
 Syntak:
mysqli_connect(“hostname”,”username”,”password”);
atau
mysqli_connect(“hostname”,”username”,”password”,”n
amadatabase”); = Jika sudah ada namadatabasenya
Note : utk versi PHP 5 kebawah menggunakan
mysql_connect sedangkan utk PHP 5 keatas
menggunakan mysqli_connect
15
Teknik Informatika - Universitas Kahuripan Kediri 16
Contoh koneksi
 $sambung = mysqli_connect("localhost","root",
“password"); = isi dengan password anda
 $sambung = mysqli_connect("localhost","root",
“password“, “kahuripan”); = isi dengan
password anda, koneksi dengan database
kahuripan
Teknik Informatika - Universitas Kahuripan Kediri 17
Contoh koneksi
$namaserver = "localhost";
$username = "root";
$password = "";
$namadatabase = “kahuripan";
$connection = mysqli_connect($namaserver,
$username, $password, $namadatabase);
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
 Setelah terkoneksi, pilihlah database.
 Bila database yang diinginkan belum
tersedia, buatlah databasenya.
 Buatlah tabel, dengan struktur datanya.
18
Teknik Informatika - Universitas Kahuripan Kediri 19
Membuat Koneksi dengan Database
<?php
$namaServer = "localhost";
$namaUser = "root";
$Pass = "pass"; //isi dgn password
$koneksi = mysqli_connect($namaServer,
$namaUser, $Pass);
?>
 Variabel $koneksi akan berisi “resource” koneksi
yang sedang aktif setelah dilakukan connect
Teknik Informatika - Universitas Kahuripan Kediri 20
Memilih database
$namadatabase = "mydata";
mysqli_select_db($koneksi, $namadatabase);
Teknik Informatika - Universitas Kahuripan Kediri 21
Contoh variasi koneksi#1
<?php
error_reporting(0);
$koneksi = mysqli_connect("localhost","root","",“latakademik") or
die("Koneksi Gagal !" . mysqli_error());
if($koneksi) echo "Koneksi Berhasil“;
$db = mysqli_select_db($koneksi,”login") or die("Database tidak ada !" .
mysqli_error());
echo "<br />";
if($db) echo "Database login berhasil dibuka !";
/* mysqli_close($koneksi); */
?>
Teknik Informatika - Universitas Kahuripan Kediri 22
Contoh Variasi Koneksi#2
<?php
$servername = “localhost";
$username = “root";
$password = “";
$dbname = latakademik";
$connection = mysqli_connect($servername, $username,
$password, $dbname);
if (!$connection){
die("Connection Failed:".mysqli_connect_error());
}
else {echo "Koneksi Pada Database Berhasil“;}
?>
Teknik Informatika - Universitas Kahuripan Kediri 23
Contoh Variasi Koneksi#3
<?php //Membuat database MySQL
//$nama_db = “akademik";
$nama_db = “ukkbaru“;
//$buat_db = "create database $nama_db";
$buat_db = "create database $nama_db“;
// $query = “create table mhsbaru (nim varchar(8), nama varchar(30), prodi varchar(2))”;
$sambung = mysqli_connect("localhost","root", ""); //isi dengan password anda
//$sambung = mysqli_connect("localhost","root", "“,$namadb); //isi dengan password anda
if($sambung){
echo "Koneksi Berhasil“;
$q_db = mysqli_query($sambung, $buat_db);
// $q_db = mysqli_query($sambung, $query);
if($q_db){
echo "<br> Database $nama_db berhasil dibuat"; }
// echo "<br> Table $nama_db berhasil dibuat"; }
else {
echo "<br> Database $nama_db gagal dibuat"; }}
// echo "<br> Table $nama_db gagal dibuat"; }}
else { echo "Koneksi Gagal";}
?>
Teknik Informatika - Universitas Kahuripan Kediri 24
Membentuk perintah SQL untuk
Pengolahan Data
 Perintah (SQL) ditampung dalam sebuah variabel
String
$query =
"INSERT INTO userTable VALUES (
1,
‘username',
‘password',
‘Username testing'
)”;
Teknik Informatika - Universitas Kahuripan Kediri 25
Eksekusi Perintah (SQL)
 Setelah menyusun SQL dalam String, dilakukan
eksekusi perintah SQL :
$hasil = mysqli_query($sambung,$query);
if($hasil){
echo(mysqli_affected_rows()."
orang ditambahkan ke dalam
sistem");
}
Teknik Informatika - Universitas Kahuripan Kediri 26
Mengakses Hasil Query
 Mengetahui jumlah data hasil query :
$jumlahHasil = mysqli_num_rows($hasil);
Note : perintah ini dapat membuat refresh otomatis
pada halaman input data
 Mengambil data hasil query :
$data = mysqli_fetch_array($hasil);
 Perintah tsb akan mengambil data (1 baris data) dan akan
mengembalikan false jika baris telah habis, maka untuk
mengambil seluruh data digunakan looping :
while($row = mysqli_fetch_array($result)){
//perintah yang dilakukan
$datas[] = $row;}
 Mengambil data dalam bentuk array :
$passDb = $data[“Password”];
Teknik Informatika - Universitas Kahuripan Kediri 27
Output
 Nilai kembalian dari mysql _fetch_array adalah
berupa array (1 dimensi / multi dimensi)
 Dapat digunakan kombinasi antara looping dan
array untuk membentuk tampilan output HTML
dari data.
Teknik Informatika - Universitas Kahuripan Kediri 28
Praktikum
 Siapkan 1 folder htdocs/ukk
 Siapkan 1 file koneksi.php
 Siapkan 1 file php dgn nama tampilmhs.php
Teknik Informatika - Universitas Kahuripan Kediri 29
Koneksi.php
<?php
$host = "localhost";
$username = "root";
$password = "";
$databasename = "ukk";
$connection = mysqli_connect($host, $username, $password,
$databasename) or die("Kesalahan Koneksi ... !!");
$find_db = mysqli_select_db($connection, $databasename);
if ($find_db) {
echo "Database Found";}
else
{echo "Database Tidak Ketemu";
}
?>
Teknik Informatika - Universitas Kahuripan Kediri 30
tampilmhs.php tampil 1 record
<?php
include "koneksi.php";
$query = mysqli_query($connection,"select * from mhs");
?>
<table border="1">
<tr>
<th>Nama</th>
<th>NIM</th>
<th>Jenis Kelamin</th>
</tr>
<?php $item = mysqli_fetch_array($query) ?>
<tr>
<td><?php echo $item['nama'] ?></td>
<td><?php echo $item['nim'] ?></td>
<td><?php echo $item['jenis_kelamin'] ?></td>
</tr>
</table>
Teknik Informatika - Universitas Kahuripan Kediri 31
tampilmhswhile.php tampil All record
<?php
include "koneksi.php";
$query = mysqli_query($connection,"select * from mhs");
?>
<table border="1">
<tr>
<th>Nama</th>
<th>NIM</th>
<th>Jenis Kelamin</th>
</tr>
<?php while($item = mysqli_fetch_array($query)){ ?>
<tr>
<td><?php echo $item['nama'] ?></td>
<td><?php echo $item['nim'] ?></td>
<td><?php echo $item['jenis_kelamin'] ?></td>
</tr>
<?php } ?>
</table>
Teknik Informatika - Universitas Kahuripan Kediri
Membuat Database via PHP (buatdatabase.php)
32
<?php
//Membuat database MySQL
$nama_db = "ukk";
$buat_db = "create database
$nama_db";
$sambung =
mysqli_connect("localhost","root
", "password"); //isi dengan
password anda
if($sambung){
echo "Koneksi Berhasil";}
else {
echo "Koneksi Gagal";}
$q_db =
mysqli_query($sambung ,
$buat_db);
if($q_db){
echo "<br> Database $nama_db
berhasil dibuat";}
else {
echo "<br> Database $nama_db
gagal dibuat";}
?>
Teknik Informatika - Universitas Kahuripan Kediri
Membuat Tabel MySQL (buattabel.php)
33
<?php
//Membuat tabel MySQL
include "koneksi.php";
$nama_tbl = "akun";
$buat_tbl = "create table
$nama_tbl(kode char(5) not null,
nama varchar(40) not null, alamat
varchar(40), password
varchar(20) )";
$qtbl = mysqli_query($connection,
$buat_tbl);
if($qtbl){
echo "<br>Tabel $nama_tbl
berhasil dibuat";}
else {
echo "<br>Tabel $nama_tbl gagal
dibuat";}
?>
Teknik Informatika - Universitas Kahuripan Kediri
FORM input
 Membuat Form sebagai input pada sistem
database.
 Input disimpan dalam satu tabel tertentu.
 Pada attribut action ditentukan file yang memiliki
skrip PHP untuk menyimpan input ke tabel pada
database.
34
35
Teknik Informatika - Universitas Kahuripan Kediri
Buat file inputbiodata.php
36
Teknik Informatika - Universitas Kahuripan Kediri
inputbiodata.php (lanjutan)
$q_simpan = "insert into akun
values('$kode','$username' ,'$alamat',md5('$
password'))"; //simpan password dengan
enkripsi
37
Teknik Informatika - Universitas Kahuripan Kediri
hapusdata.php
• hapusdata.php ini berisi tentang script php yang berisi
perintah view dan delete, dimana program akan menampilkan
data entrian yang dilakukan oleh user untuk memastikan data
tersebut memang ada, selanjutnya user akan menghapus data
tersebut.
• Program ini akan menghasilkan data yang tampil pada form
yang sama.
38
Teknik Informatika - Universitas Kahuripan Kediri
Hapusdata.php
39
Teknik Informatika - Universitas Kahuripan Kediri
40
Teknik Informatika - Universitas Kahuripan Kediri
Hapusdata.php (lanjut #3)
41
Teknik Informatika - Universitas Kahuripan Kediri
hapusdataupdate.php
• Hapusdataupdate.php ini ini merupakan pengembangan dari
file hapusdata.php
• Program ini telah dilengkapi script php yang berisi perintah
update,
• Tahap awal user melihat dulu data yang akan diupdate
• Tahap kedua, user klik edit untuk menampilkan data yang
akan diedit
• Tahap ketiga, user mengedit data dan menyimpannya
• Program ini akan menghasilkan data yang tampil pada form
yang sama
42
Teknik Informatika - Universitas Kahuripan Kediri
Tampilan hapusupdatedata.php
43
Teknik Informatika - Universitas Kahuripan Kediri
Tampilan ketika button edit diklik
44
Teknik Informatika - Universitas Kahuripan Kediri
Coba lakukan edit pada alamat
45
Teknik Informatika - Universitas Kahuripan Kediri
hapusdataupdate.php tampil data ke
viewdata.php
•Hasil view proses hapusupdatedata.php ini dapat ditampilkan dilayar yang
berbeda dengan cara menambahkan lokasi
46
Teknik Informatika - Universitas Kahuripan Kediri
hapusdataupdate.php
47
Teknik Informatika - Universitas Kahuripan Kediri
48
Teknik Informatika - Universitas Kahuripan Kediri
49
Teknik Informatika - Universitas Kahuripan Kediri
50
Teknik Informatika - Universitas Kahuripan Kediri
Definisi Session
Apa itu Session ?
Sesion merupakan sebuah fasilitas dalam PHP agar user dapat menggunakan
variabel global. Variabel global berguna untuk passing variabel antar layar. Hal ini
membantu antar layar untuk dapat saling berhubungan secara variabel.
Session juga berguna untuk mencegah user direct langsung ke URL/halaman
proses tanpa melalui proses login.
Untuk menggunakan perintah session maka kita harus mengaktifkannya.
1. Ketik ob_start(); session_start(); dan taruh di awal/paling atas script html,
contoh :
<?php
ob_start();
session_start();
include ‘koneksi.php';
?>
<html>
...
</html>
51
Teknik Informatika - Universitas Kahuripan Kediri
Definisi Session
2. Pengaktifan perintah session ini membuat kita dapat menggunakan variabel
session yaitu $_SESSION[‘namasession’]
contoh :
$user = $_POST['username']; //mengambil entrian username
$_SESSION['username']=$user; //memindahkan nilai $user ke penampung
global $_SESSION['username']
note : $_SESSION['username'] harus ditulis dengan huruf BESAR
3. Penggunaan isi dari $_SESSION['username'] ini dapat digunakan diseluruh
layar selama di awal coding/script dari layar tersebut telah diaktifkan perintah
ob_start(); session_start();
4. Untuk mengakhiri penggunaan session apabila telah logout maka kita dapat
memberikan tahapan perintah sbb :
UNSET($_SESSION['username']); //melepaskan data session username
session_destroy();
52
Teknik Informatika - Universitas Kahuripan Kediri
1. Buat tampilan seperti dibawah ini :
2. Jika login sukses maka arahkan untuk membuka file
hapusupdatedata.php
53
Teknik Informatika - Universitas Kahuripan Kediri
3. Jika nama dan password salah maka akan keluar pesan “username atau password salah”
Note : perintah ini masih belum menggunakan session. Untuk
mengujinya, kita dapat mengetikkan URL proses
(localhost/ukk/hapusupdatedata.php) . Apabila langsung bisa terbuka
maka sistem semacam ini masih belum ada pengamannya. Silahkan
ikuti perintah pada slide berikutnya.
54
Teknik Informatika - Universitas Kahuripan Kediri
Coding
Login.php
(tanpa session)
55
Teknik Informatika - Universitas Kahuripan Kediri
Login.php
56
Teknik Informatika - Universitas Kahuripan Kediri
4. Aktifkan perintah session
Teknik Informatika - Universitas Kahuripan Kediri
FORM-Input Database (action form ke halaman berbeda)
57
<html>
<head>
<title>Formulir Input Akun</title>
<meta author=UKK>
</head>
<body>
<h1>Masukkan Data Akun</h1>
<form method=post action=simpan.php>
<table>
<tr>
<td>Username</td>
<td><input type=text name=username size=20></td>
</tr>
<tr>
<td>Password</td>
<td><input type=text name=password size=30></td>
</tr>
Simpan dengan nama
inputbiodata.php
Note : Jika dalam skrip hanya
berisi tag html, file dapat
disimpan dgn extention html
Teknik Informatika - Universitas Kahuripan Kediri
Form Input Database
58
<tr>
<td align=center><input
type=submit name=submit
value=Simpan></td>
<td align=center><input
type=reset name=reset
value=Ulangi></td>
</tr>
</table>
</form>
</body>
</html>
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
 Untuk menyimpan input ke tabel MySQL,
terlebih dahulu input dibaca sesuai metode yang
digunakan.
 Untuk menyimpan ke database digunakan
perintah:
$hasil = mysqli_query(”SQL Statement”);
59
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP – MySQL simpan.php
60
<?php
$sambung =
mysqli_connect("localhos
t","root", "");
mysqli_select_db(‘login',
$sambung) or
die("Koneksi ke login
gagal");
?>
<html>
</head>
<body>
<h1>Akun</h1>
<?php
$username =
$_POST[‘username'];
$password =
$_POST[‘password'];
?>
Koneksi PHP – MySQL
Simpan.php - Lanjutan
61
<?php
$q_simpan = "insert into akun
values('$username' ,'$password')";
$hasil = mysqli_query($q_simpan,
$sambung);
if($hasil){
echo "Data tersimpan: <br>";
echo “username : ".
$username."<br>";
echo “Password : ".
$password."<br>";
}else{
echo "Data gagal disimpan";}
?>
<form method=post
action=inputakun.php>
<input type=submit
value=Kembali>
</form>
<form method=post
action=lihattable.php>
<input type=submit value="Lihat
Data">
</form>
</body>
</html>
Teknik Informatika - Universitas Kahuripan Kediri
Note : pada cetak tebal jika skrip inputbiodata
hanya html juga dpt disimpan dgn nama
inputbiodata.html
<form method=Nopost action=inputbiodata.html>
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
62
Teknik Informatika - Universitas Kahuripan Kediri
Menampilkan data bentuk table
63
<?php
$sambung =
mysqli_connect("localhost","root
",“password");
mysql_select_db('ukk',
$sambung) or die("Koneksi ke
ukk gagal");
$tampil = "select * from
biodata";
$q_buat = mysqli_query($tampil,
$sambung);
?>
<h1>Tabel Biodata</h1>
<table border=1>
<tr>
<td>Kode</td>
<td>Nama</td>
<?php
while($row =
mysqli_fetch_row($q_buat)){
echo ("<tr
align=center><td>$row[0]</td>")
;
echo ("<td>$row[1]</td>");
echo ("<td>$row[2]</td></tr>");
}
?>
</table>
<html>
<form method=post
action=inputbiodata.php>
<input type=submit
value=Tambah
name=tambah></form>
Teknik Informatika - Universitas Kahuripan Kediri
Menampilkan data bentuk table
64
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
Form Pencarian
 Buat Input dengan type radio untuk
memilih field pencarian.
 Buat Input dengan type text sebagai
kata kunci pencarian.
 Buat tombol Cari, Input -> type Submit
65
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
66
<HTML>
<HEAD>
<title>Cari Database</title>
</HEAD>
<BODY>
<h1>Searching Biodata</h1>
<form
action="hasilsearch.php"
method="post">
<select name="kolom">
<option
value="kode">Kode</option>
<option
value="Nama">Nama</option
>
</select>
Masukkan kata yang anda
cari
<input type ="text" type
="text" name="cari">
<input type ="submit"
value="cari" >
</form>
</BODY>
</HTML>
Note : Simpan file dgn
nama “search.php”
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
67
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
68
<?php
$kolom=$_POST['kolom'];
$cari=$_POST['cari'];
$conn=mysqli_connect("localhos
t","root",“password");
mysqli_select_db("ukk", $conn);
$hasil=mysqli_query("select *
from biodata where $kolom like
'%$cari%'", $conn);
if ($hasil==false)
{
die(mysql_error());
}
$jumlah=mysql_num_rows($hasi
l);
echo "<br>";
echo "Ditemukan: $jumlah";
while($baris=mysqli_fetch_array(
$hasil))
{
echo "Kode : ";
echo $baris[0];
echo "<br>";
echo "Nama : ";
echo $baris[1];
echo "<br>";
echo "Alamat :";
echo $baris[2]; }
?>
Note : Simpan file dgn nama “hasilsearch.php”
Teknik Informatika - Universitas Kahuripan Kediri
Koneksi PHP - MySQL
69
70
Teknik Informatika - Universitas Kahuripan Kediri
KONEKSI PHP – MYSQL (INCLUDE)
1. Buat database
CREATE DATABASE db_mhs;
USE db_mhs;
CREATE TABLE mahasiswa( id_mhs int(5), nama
varchar(30), alamat varchar(30) );
2. Isikan data sembarang
71
Teknik Informatika - Universitas Kahuripan Kediri
3. Koneksikan PHP – MySql simpan dengan nama koneksi.php
<?php $host = "localhost“; //alamat server
mysql $user = "root“; //username
mysql $pass = ""; //password
mysql $db = "db_mhs“; //nama database
//koneksi ke server mysqli
$koneksi = mysqli_connect($host,$user,$pass) or die
("Tidak Bisa Konek ke Database");
//koneksi ke database
mysqli_select_db($db,$koneksi) or die ("Tidak
Menemukan Databasenya");
?>
72
Teknik Informatika - Universitas Kahuripan Kediri
4. Buat file baca.php
<?php
include "koneksi.php";
$perintah= "SELECT * FROM mahasiswa";
$query = mysqli_query($perintah);
//tampilkan data
while($data=mysqli_fetch_array($query)) {
echo "nama :".$data['nama']." - alamat: ".
$data['alamat']; }
?>
73
Output (cont.) #2 ===== 1
<form action="" method="post">
<table border="1" cellpadding="0" cellspacing="0">
 <tr>
 <th>No</th>
 <th>Username</th>
 <th>Password</th>
 <th>Action</th>
 </tr>
 <?php if(mysqli_num_rows($query)>0){ ?> <!-- Jika
ditemukan isi data masteruser -->
 <?php
 $no = 1;
 while($data = mysqli_fetch_array($query)){
 ?> <!-- looping Baca isi data masteruser -->
74
Output (cont.) #2 ===== 2

<tr>
 <td><?php echo $no ?></td>
 <td><?php echo $data["userid"];?></td> <!-- Menampilkan isi data
userid di table masteruser -->
 <td><?php echo $data["pass"];?></td> <!-- Menampilkan isi data pass
di table masteruser -->

<td>
 <a href="#">Delete</a>
 <a href="#">Update</a>

</td>
 </tr>
 <?php $no++; } ?>
 <?php } ?>
 </table>

</form>
Teknik Informatika - Universitas Kahuripan Kediri 75
Issues
 Perhatikan kompleksitas query
 Semakin kompleks query yang digunakan, semakin
lama waktu eksekusi
 Perhatikan koneksi open-close
 Non-presistent connection mencegah beban
berlebihan di server
 Beban di server berbanding lurus dengan
jumlah user yang mengakses
 Perhatikan sekuritas
 Hindari kemungkinan sql-injection
 Escape characters
Teknik Informatika - Universitas Kahuripan Kediri
Sekian - Terima Kasih
76

More Related Content

DOC
Fungsi php mysql
PPT
16406 pertemuan17(konsep basis-data-di-web)
PPTX
5 - Accessing-MySQL-Database by PHP - Pemrograman Internet Lanjut.pptx
PPT
P webfb
PDF
Koneksi PHP ke Database MySQL menggunakan MySQLi Extension
PDF
Modul PBO Bab-11 - JDBC
DOCX
Fungsi mysql di php adalah untuk mengambil data di mysql
PDF
Mengenal fungsi php untuk pengambilan data my sql: mysql fetch
Fungsi php mysql
16406 pertemuan17(konsep basis-data-di-web)
5 - Accessing-MySQL-Database by PHP - Pemrograman Internet Lanjut.pptx
P webfb
Koneksi PHP ke Database MySQL menggunakan MySQLi Extension
Modul PBO Bab-11 - JDBC
Fungsi mysql di php adalah untuk mengambil data di mysql
Mengenal fungsi php untuk pengambilan data my sql: mysql fetch

Similar to Pertemuan XI - Koneksi php - database mysql (20)

PDF
Mysql rahmat
PDF
Mysql rahmat
PDF
Fungsi fungsi pada php - pemrograman php my sql
PDF
Php dan MySQL 4
PPT
Materi pemrogwaman web tentang PHP MySQL.ppt
PDF
Kp.5 obyek premier database
PDF
CRUD dengan PHP dan MySQL
PDF
Modul Praktikum Sistem Basis Data
PPT
Basis data 2
PDF
13 php mysql 3 combining
PPT
Pwebfb1
PDF
Menampilkan data pada Database MySQL di JSP(Java Server Page)
PPTX
PRAKTIKUM MANDIRI - MANSISTER - WEB SERVICE - revised 3.0.pptx
DOCX
Modul framework code igniter
PPTX
manipulasi data
PDF
Tutorial crud PHP
PPT
Konsep basis data pengantar my sql
PPT
Konsep dasar sistem basis data
PPTX
Cara membuat koneksi PHP dan database MySQL
Mysql rahmat
Mysql rahmat
Fungsi fungsi pada php - pemrograman php my sql
Php dan MySQL 4
Materi pemrogwaman web tentang PHP MySQL.ppt
Kp.5 obyek premier database
CRUD dengan PHP dan MySQL
Modul Praktikum Sistem Basis Data
Basis data 2
13 php mysql 3 combining
Pwebfb1
Menampilkan data pada Database MySQL di JSP(Java Server Page)
PRAKTIKUM MANDIRI - MANSISTER - WEB SERVICE - revised 3.0.pptx
Modul framework code igniter
manipulasi data
Tutorial crud PHP
Konsep basis data pengantar my sql
Konsep dasar sistem basis data
Cara membuat koneksi PHP dan database MySQL
Ad

Recently uploaded (8)

DOCX
Antivirus Versi.FULL.JALiN.KB.PRO Keutuhan Aplikasi Konsep dan Praktik dalam ...
DOCX
Keutuhan Aplikasi Konsep dan Praktik dalam Upaya menciptakan aplikasi Anti Vi...
PPTX
Peranan AI dalam Dunia Pendidikan dan Industri Aplikasinya
PPTX
PERANCANGAN DAN PENGEMBANGAN VIDEO GAME SEBAGAI MEDIA TERAPI DEPRESI
PPTX
Implementasi Microservices pada Manufaktur
PPTX
Materi_Array_Karakter_String untuk kelas XI sma.pptx
PPTX
PEMAHAMAN MAPEL KODING DAN KECERDASAN ARTIFICIAL
PPT
pengantar-sistem-informasi manajemen.ppt
Antivirus Versi.FULL.JALiN.KB.PRO Keutuhan Aplikasi Konsep dan Praktik dalam ...
Keutuhan Aplikasi Konsep dan Praktik dalam Upaya menciptakan aplikasi Anti Vi...
Peranan AI dalam Dunia Pendidikan dan Industri Aplikasinya
PERANCANGAN DAN PENGEMBANGAN VIDEO GAME SEBAGAI MEDIA TERAPI DEPRESI
Implementasi Microservices pada Manufaktur
Materi_Array_Karakter_String untuk kelas XI sma.pptx
PEMAHAMAN MAPEL KODING DAN KECERDASAN ARTIFICIAL
pengantar-sistem-informasi manajemen.ppt
Ad

Pertemuan XI - Koneksi php - database mysql

  • 1. PHP – ACCESSING MYSQL DATABASE PERTEMUAN V
  • 2. Teknik Informatika - Universitas Kahuripan Kediri 2
  • 3. Teknik Informatika - Universitas Kahuripan Kediri 3 Koneksi Database  PHP – MySql installed  MySql telah running (cek xampp control panel)  Database  Tabel  Query  SQL (Structured Query Language)  Script PHP untuk pengolahan database  Output (HTML)
  • 4. Teknik Informatika - Universitas Kahuripan Kediri 4 Koneksi Database  Berikut Langkah-langkah untuk Koneksi Database menggunakan PHP 1. Koneksi ke server Database 2. Memilih database 3. Membuat perintah SQL (sql command) 4. Eksekusi command / perintah 5. Mengakses hasil eksekusi perintah 6. Melihat hasil output 7. Menutup sambungan
  • 5. Teknik Informatika - Universitas Kahuripan Kediri 5 Contoh implementasi  Form login Login user dicocokan dengan data input dari user  Form Input Data Input Data dari User  List tabel Menampilkan data dalam sebuah tabel misalkan data keuangan, list nilai dan sebagainya  Detail data Shoping cart
  • 7. Teknik Informatika - Universitas Kahuripan Kediri 7 SQL  SQL (Structured Query Language) adalah bahasa yang khusus digunakan untuk mengoperasikan database.  Untuk memudahkan, SQL query dapat dikelompokkan menjadi tiga jenis :  Query untuk mengelola data  Query untuk mengakses data dalam 1 tabel  Query untuk mengakses data lebih dari 1 tabel  SQL Manager : Software yang digunakan untuk mengolah database dalam server  PHPMyAdmin  SQLyog  EMS
  • 8. Teknik Informatika - Universitas Kahuripan Kediri 8 Query Untuk Mengelola Database  Yang termasuk dalam kelompok query ini adalah :  Membuat database  Menghapus database  Membuat tabel  Memodifikasi tabel  Menghapus tabel  Menambah user (user database)  Mengatur permission (user database)  Menghapus user (user database)
  • 9. Teknik Informatika - Universitas Kahuripan Kediri 9 Query u/ Mengelola Database (cont.)  Membuat database CREATE DATABASE <nama database>  Menghapus database DROP DATABASE  Membuat tabel CREATE TABLE userTable( UserId INT (3), UserName VARCHAR (50), Password VARCHAR (50), NamaLengkap VARCHAR (50) );  Menghapus tabel DROP TABLE <nama tabel>;
  • 10. Teknik Informatika - Universitas Kahuripan Kediri 10 Query u/ 1 Tabel  Query satu tabel digunakan untuk mengelola data dalam satu tabel  Beberapa perintah yang dapat digunakan : Fungsi Query Input data INSERT Modifikasi data UPDATE Mengambil data SELECT Menghapus data DELETE Menghitung banyaknya data COUNT Menjumlah data SUM Menghitung rata-rata AVG dll
  • 11. Teknik Informatika - Universitas Kahuripan Kediri 11 Query u/ 1 Tabel (cont.)  SQL INSERT INSERT INTO userTable VALUES ( 1, ‘ukk', ‘ukk123', ‘Teknik Informatika UKK' );  SQL SELECT SELECT * FROM UserTable WHERE UserId=1;  SQL UPDATE UPDATE userTable SET password=’test’ WHERE UserName=’ukk’;  SQL DELETE DELETE FROM UserTable WHERE UserName=‘ukk’
  • 12. Teknik Informatika - Universitas Kahuripan Kediri 12 Latihan  Buat table: Biodata UserId INT (3), NamaLengkap VARCHAR (50) TglLahir DATE Alamat VARCHAR (50) AsalSMA VARCHAR (50) JurusanSMA VARCHAR (50) ==== Isi 5 data table : Biodata Dan 3 data table UserTable  Membuat database CREATE DATABASE <nama database> Create database dataku  Menghapus database DROP DATABASE  Membuat tabel CREATE TABLE biodata( UserId INT (3), UserName VARCHAR (50), Password VARCHAR (50), NamaLengkap VARCHAR (50) );  Menghapus tabel DROP TABLE <nama tabel>;
  • 13. Teknik Informatika - Universitas Kahuripan Kediri 13 Query u/ Banyak Tabel  Kelompok Query ini digunakan untuk mengambil data dari lebih dari 1 tabel menggunakan JOIN. SELECT * FROM UserTable JOIN Biodata ON UserTabel.UserId = Biodata.UserId
  • 15. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL  Untuk melakukan koneksi PHP dengan MySQL digunakan perintah: mysqli_connect() -> skrip PHP.  Syntak: mysqli_connect(“hostname”,”username”,”password”); atau mysqli_connect(“hostname”,”username”,”password”,”n amadatabase”); = Jika sudah ada namadatabasenya Note : utk versi PHP 5 kebawah menggunakan mysql_connect sedangkan utk PHP 5 keatas menggunakan mysqli_connect 15
  • 16. Teknik Informatika - Universitas Kahuripan Kediri 16 Contoh koneksi  $sambung = mysqli_connect("localhost","root", “password"); = isi dengan password anda  $sambung = mysqli_connect("localhost","root", “password“, “kahuripan”); = isi dengan password anda, koneksi dengan database kahuripan
  • 17. Teknik Informatika - Universitas Kahuripan Kediri 17 Contoh koneksi $namaserver = "localhost"; $username = "root"; $password = ""; $namadatabase = “kahuripan"; $connection = mysqli_connect($namaserver, $username, $password, $namadatabase);
  • 18. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL  Setelah terkoneksi, pilihlah database.  Bila database yang diinginkan belum tersedia, buatlah databasenya.  Buatlah tabel, dengan struktur datanya. 18
  • 19. Teknik Informatika - Universitas Kahuripan Kediri 19 Membuat Koneksi dengan Database <?php $namaServer = "localhost"; $namaUser = "root"; $Pass = "pass"; //isi dgn password $koneksi = mysqli_connect($namaServer, $namaUser, $Pass); ?>  Variabel $koneksi akan berisi “resource” koneksi yang sedang aktif setelah dilakukan connect
  • 20. Teknik Informatika - Universitas Kahuripan Kediri 20 Memilih database $namadatabase = "mydata"; mysqli_select_db($koneksi, $namadatabase);
  • 21. Teknik Informatika - Universitas Kahuripan Kediri 21 Contoh variasi koneksi#1 <?php error_reporting(0); $koneksi = mysqli_connect("localhost","root","",“latakademik") or die("Koneksi Gagal !" . mysqli_error()); if($koneksi) echo "Koneksi Berhasil“; $db = mysqli_select_db($koneksi,”login") or die("Database tidak ada !" . mysqli_error()); echo "<br />"; if($db) echo "Database login berhasil dibuka !"; /* mysqli_close($koneksi); */ ?>
  • 22. Teknik Informatika - Universitas Kahuripan Kediri 22 Contoh Variasi Koneksi#2 <?php $servername = “localhost"; $username = “root"; $password = “"; $dbname = latakademik"; $connection = mysqli_connect($servername, $username, $password, $dbname); if (!$connection){ die("Connection Failed:".mysqli_connect_error()); } else {echo "Koneksi Pada Database Berhasil“;} ?>
  • 23. Teknik Informatika - Universitas Kahuripan Kediri 23 Contoh Variasi Koneksi#3 <?php //Membuat database MySQL //$nama_db = “akademik"; $nama_db = “ukkbaru“; //$buat_db = "create database $nama_db"; $buat_db = "create database $nama_db“; // $query = “create table mhsbaru (nim varchar(8), nama varchar(30), prodi varchar(2))”; $sambung = mysqli_connect("localhost","root", ""); //isi dengan password anda //$sambung = mysqli_connect("localhost","root", "“,$namadb); //isi dengan password anda if($sambung){ echo "Koneksi Berhasil“; $q_db = mysqli_query($sambung, $buat_db); // $q_db = mysqli_query($sambung, $query); if($q_db){ echo "<br> Database $nama_db berhasil dibuat"; } // echo "<br> Table $nama_db berhasil dibuat"; } else { echo "<br> Database $nama_db gagal dibuat"; }} // echo "<br> Table $nama_db gagal dibuat"; }} else { echo "Koneksi Gagal";} ?>
  • 24. Teknik Informatika - Universitas Kahuripan Kediri 24 Membentuk perintah SQL untuk Pengolahan Data  Perintah (SQL) ditampung dalam sebuah variabel String $query = "INSERT INTO userTable VALUES ( 1, ‘username', ‘password', ‘Username testing' )”;
  • 25. Teknik Informatika - Universitas Kahuripan Kediri 25 Eksekusi Perintah (SQL)  Setelah menyusun SQL dalam String, dilakukan eksekusi perintah SQL : $hasil = mysqli_query($sambung,$query); if($hasil){ echo(mysqli_affected_rows()." orang ditambahkan ke dalam sistem"); }
  • 26. Teknik Informatika - Universitas Kahuripan Kediri 26 Mengakses Hasil Query  Mengetahui jumlah data hasil query : $jumlahHasil = mysqli_num_rows($hasil); Note : perintah ini dapat membuat refresh otomatis pada halaman input data  Mengambil data hasil query : $data = mysqli_fetch_array($hasil);  Perintah tsb akan mengambil data (1 baris data) dan akan mengembalikan false jika baris telah habis, maka untuk mengambil seluruh data digunakan looping : while($row = mysqli_fetch_array($result)){ //perintah yang dilakukan $datas[] = $row;}  Mengambil data dalam bentuk array : $passDb = $data[“Password”];
  • 27. Teknik Informatika - Universitas Kahuripan Kediri 27 Output  Nilai kembalian dari mysql _fetch_array adalah berupa array (1 dimensi / multi dimensi)  Dapat digunakan kombinasi antara looping dan array untuk membentuk tampilan output HTML dari data.
  • 28. Teknik Informatika - Universitas Kahuripan Kediri 28 Praktikum  Siapkan 1 folder htdocs/ukk  Siapkan 1 file koneksi.php  Siapkan 1 file php dgn nama tampilmhs.php
  • 29. Teknik Informatika - Universitas Kahuripan Kediri 29 Koneksi.php <?php $host = "localhost"; $username = "root"; $password = ""; $databasename = "ukk"; $connection = mysqli_connect($host, $username, $password, $databasename) or die("Kesalahan Koneksi ... !!"); $find_db = mysqli_select_db($connection, $databasename); if ($find_db) { echo "Database Found";} else {echo "Database Tidak Ketemu"; } ?>
  • 30. Teknik Informatika - Universitas Kahuripan Kediri 30 tampilmhs.php tampil 1 record <?php include "koneksi.php"; $query = mysqli_query($connection,"select * from mhs"); ?> <table border="1"> <tr> <th>Nama</th> <th>NIM</th> <th>Jenis Kelamin</th> </tr> <?php $item = mysqli_fetch_array($query) ?> <tr> <td><?php echo $item['nama'] ?></td> <td><?php echo $item['nim'] ?></td> <td><?php echo $item['jenis_kelamin'] ?></td> </tr> </table>
  • 31. Teknik Informatika - Universitas Kahuripan Kediri 31 tampilmhswhile.php tampil All record <?php include "koneksi.php"; $query = mysqli_query($connection,"select * from mhs"); ?> <table border="1"> <tr> <th>Nama</th> <th>NIM</th> <th>Jenis Kelamin</th> </tr> <?php while($item = mysqli_fetch_array($query)){ ?> <tr> <td><?php echo $item['nama'] ?></td> <td><?php echo $item['nim'] ?></td> <td><?php echo $item['jenis_kelamin'] ?></td> </tr> <?php } ?> </table>
  • 32. Teknik Informatika - Universitas Kahuripan Kediri Membuat Database via PHP (buatdatabase.php) 32 <?php //Membuat database MySQL $nama_db = "ukk"; $buat_db = "create database $nama_db"; $sambung = mysqli_connect("localhost","root ", "password"); //isi dengan password anda if($sambung){ echo "Koneksi Berhasil";} else { echo "Koneksi Gagal";} $q_db = mysqli_query($sambung , $buat_db); if($q_db){ echo "<br> Database $nama_db berhasil dibuat";} else { echo "<br> Database $nama_db gagal dibuat";} ?>
  • 33. Teknik Informatika - Universitas Kahuripan Kediri Membuat Tabel MySQL (buattabel.php) 33 <?php //Membuat tabel MySQL include "koneksi.php"; $nama_tbl = "akun"; $buat_tbl = "create table $nama_tbl(kode char(5) not null, nama varchar(40) not null, alamat varchar(40), password varchar(20) )"; $qtbl = mysqli_query($connection, $buat_tbl); if($qtbl){ echo "<br>Tabel $nama_tbl berhasil dibuat";} else { echo "<br>Tabel $nama_tbl gagal dibuat";} ?>
  • 34. Teknik Informatika - Universitas Kahuripan Kediri FORM input  Membuat Form sebagai input pada sistem database.  Input disimpan dalam satu tabel tertentu.  Pada attribut action ditentukan file yang memiliki skrip PHP untuk menyimpan input ke tabel pada database. 34
  • 35. 35 Teknik Informatika - Universitas Kahuripan Kediri Buat file inputbiodata.php
  • 36. 36 Teknik Informatika - Universitas Kahuripan Kediri inputbiodata.php (lanjutan) $q_simpan = "insert into akun values('$kode','$username' ,'$alamat',md5('$ password'))"; //simpan password dengan enkripsi
  • 37. 37 Teknik Informatika - Universitas Kahuripan Kediri hapusdata.php • hapusdata.php ini berisi tentang script php yang berisi perintah view dan delete, dimana program akan menampilkan data entrian yang dilakukan oleh user untuk memastikan data tersebut memang ada, selanjutnya user akan menghapus data tersebut. • Program ini akan menghasilkan data yang tampil pada form yang sama.
  • 38. 38 Teknik Informatika - Universitas Kahuripan Kediri Hapusdata.php
  • 39. 39 Teknik Informatika - Universitas Kahuripan Kediri
  • 40. 40 Teknik Informatika - Universitas Kahuripan Kediri Hapusdata.php (lanjut #3)
  • 41. 41 Teknik Informatika - Universitas Kahuripan Kediri hapusdataupdate.php • Hapusdataupdate.php ini ini merupakan pengembangan dari file hapusdata.php • Program ini telah dilengkapi script php yang berisi perintah update, • Tahap awal user melihat dulu data yang akan diupdate • Tahap kedua, user klik edit untuk menampilkan data yang akan diedit • Tahap ketiga, user mengedit data dan menyimpannya • Program ini akan menghasilkan data yang tampil pada form yang sama
  • 42. 42 Teknik Informatika - Universitas Kahuripan Kediri Tampilan hapusupdatedata.php
  • 43. 43 Teknik Informatika - Universitas Kahuripan Kediri Tampilan ketika button edit diklik
  • 44. 44 Teknik Informatika - Universitas Kahuripan Kediri Coba lakukan edit pada alamat
  • 45. 45 Teknik Informatika - Universitas Kahuripan Kediri hapusdataupdate.php tampil data ke viewdata.php •Hasil view proses hapusupdatedata.php ini dapat ditampilkan dilayar yang berbeda dengan cara menambahkan lokasi
  • 46. 46 Teknik Informatika - Universitas Kahuripan Kediri hapusdataupdate.php
  • 47. 47 Teknik Informatika - Universitas Kahuripan Kediri
  • 48. 48 Teknik Informatika - Universitas Kahuripan Kediri
  • 49. 49 Teknik Informatika - Universitas Kahuripan Kediri
  • 50. 50 Teknik Informatika - Universitas Kahuripan Kediri Definisi Session Apa itu Session ? Sesion merupakan sebuah fasilitas dalam PHP agar user dapat menggunakan variabel global. Variabel global berguna untuk passing variabel antar layar. Hal ini membantu antar layar untuk dapat saling berhubungan secara variabel. Session juga berguna untuk mencegah user direct langsung ke URL/halaman proses tanpa melalui proses login. Untuk menggunakan perintah session maka kita harus mengaktifkannya. 1. Ketik ob_start(); session_start(); dan taruh di awal/paling atas script html, contoh : <?php ob_start(); session_start(); include ‘koneksi.php'; ?> <html> ... </html>
  • 51. 51 Teknik Informatika - Universitas Kahuripan Kediri Definisi Session 2. Pengaktifan perintah session ini membuat kita dapat menggunakan variabel session yaitu $_SESSION[‘namasession’] contoh : $user = $_POST['username']; //mengambil entrian username $_SESSION['username']=$user; //memindahkan nilai $user ke penampung global $_SESSION['username'] note : $_SESSION['username'] harus ditulis dengan huruf BESAR 3. Penggunaan isi dari $_SESSION['username'] ini dapat digunakan diseluruh layar selama di awal coding/script dari layar tersebut telah diaktifkan perintah ob_start(); session_start(); 4. Untuk mengakhiri penggunaan session apabila telah logout maka kita dapat memberikan tahapan perintah sbb : UNSET($_SESSION['username']); //melepaskan data session username session_destroy();
  • 52. 52 Teknik Informatika - Universitas Kahuripan Kediri 1. Buat tampilan seperti dibawah ini : 2. Jika login sukses maka arahkan untuk membuka file hapusupdatedata.php
  • 53. 53 Teknik Informatika - Universitas Kahuripan Kediri 3. Jika nama dan password salah maka akan keluar pesan “username atau password salah” Note : perintah ini masih belum menggunakan session. Untuk mengujinya, kita dapat mengetikkan URL proses (localhost/ukk/hapusupdatedata.php) . Apabila langsung bisa terbuka maka sistem semacam ini masih belum ada pengamannya. Silahkan ikuti perintah pada slide berikutnya.
  • 54. 54 Teknik Informatika - Universitas Kahuripan Kediri Coding Login.php (tanpa session)
  • 55. 55 Teknik Informatika - Universitas Kahuripan Kediri Login.php
  • 56. 56 Teknik Informatika - Universitas Kahuripan Kediri 4. Aktifkan perintah session
  • 57. Teknik Informatika - Universitas Kahuripan Kediri FORM-Input Database (action form ke halaman berbeda) 57 <html> <head> <title>Formulir Input Akun</title> <meta author=UKK> </head> <body> <h1>Masukkan Data Akun</h1> <form method=post action=simpan.php> <table> <tr> <td>Username</td> <td><input type=text name=username size=20></td> </tr> <tr> <td>Password</td> <td><input type=text name=password size=30></td> </tr> Simpan dengan nama inputbiodata.php Note : Jika dalam skrip hanya berisi tag html, file dapat disimpan dgn extention html
  • 58. Teknik Informatika - Universitas Kahuripan Kediri Form Input Database 58 <tr> <td align=center><input type=submit name=submit value=Simpan></td> <td align=center><input type=reset name=reset value=Ulangi></td> </tr> </table> </form> </body> </html>
  • 59. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL  Untuk menyimpan input ke tabel MySQL, terlebih dahulu input dibaca sesuai metode yang digunakan.  Untuk menyimpan ke database digunakan perintah: $hasil = mysqli_query(”SQL Statement”); 59
  • 60. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP – MySQL simpan.php 60 <?php $sambung = mysqli_connect("localhos t","root", ""); mysqli_select_db(‘login', $sambung) or die("Koneksi ke login gagal"); ?> <html> </head> <body> <h1>Akun</h1> <?php $username = $_POST[‘username']; $password = $_POST[‘password']; ?>
  • 61. Koneksi PHP – MySQL Simpan.php - Lanjutan 61 <?php $q_simpan = "insert into akun values('$username' ,'$password')"; $hasil = mysqli_query($q_simpan, $sambung); if($hasil){ echo "Data tersimpan: <br>"; echo “username : ". $username."<br>"; echo “Password : ". $password."<br>"; }else{ echo "Data gagal disimpan";} ?> <form method=post action=inputakun.php> <input type=submit value=Kembali> </form> <form method=post action=lihattable.php> <input type=submit value="Lihat Data"> </form> </body> </html> Teknik Informatika - Universitas Kahuripan Kediri Note : pada cetak tebal jika skrip inputbiodata hanya html juga dpt disimpan dgn nama inputbiodata.html <form method=Nopost action=inputbiodata.html>
  • 62. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL 62
  • 63. Teknik Informatika - Universitas Kahuripan Kediri Menampilkan data bentuk table 63 <?php $sambung = mysqli_connect("localhost","root ",“password"); mysql_select_db('ukk', $sambung) or die("Koneksi ke ukk gagal"); $tampil = "select * from biodata"; $q_buat = mysqli_query($tampil, $sambung); ?> <h1>Tabel Biodata</h1> <table border=1> <tr> <td>Kode</td> <td>Nama</td> <?php while($row = mysqli_fetch_row($q_buat)){ echo ("<tr align=center><td>$row[0]</td>") ; echo ("<td>$row[1]</td>"); echo ("<td>$row[2]</td></tr>"); } ?> </table> <html> <form method=post action=inputbiodata.php> <input type=submit value=Tambah name=tambah></form>
  • 64. Teknik Informatika - Universitas Kahuripan Kediri Menampilkan data bentuk table 64
  • 65. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL Form Pencarian  Buat Input dengan type radio untuk memilih field pencarian.  Buat Input dengan type text sebagai kata kunci pencarian.  Buat tombol Cari, Input -> type Submit 65
  • 66. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL 66 <HTML> <HEAD> <title>Cari Database</title> </HEAD> <BODY> <h1>Searching Biodata</h1> <form action="hasilsearch.php" method="post"> <select name="kolom"> <option value="kode">Kode</option> <option value="Nama">Nama</option > </select> Masukkan kata yang anda cari <input type ="text" type ="text" name="cari"> <input type ="submit" value="cari" > </form> </BODY> </HTML> Note : Simpan file dgn nama “search.php”
  • 67. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL 67
  • 68. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL 68 <?php $kolom=$_POST['kolom']; $cari=$_POST['cari']; $conn=mysqli_connect("localhos t","root",“password"); mysqli_select_db("ukk", $conn); $hasil=mysqli_query("select * from biodata where $kolom like '%$cari%'", $conn); if ($hasil==false) { die(mysql_error()); } $jumlah=mysql_num_rows($hasi l); echo "<br>"; echo "Ditemukan: $jumlah"; while($baris=mysqli_fetch_array( $hasil)) { echo "Kode : "; echo $baris[0]; echo "<br>"; echo "Nama : "; echo $baris[1]; echo "<br>"; echo "Alamat :"; echo $baris[2]; } ?> Note : Simpan file dgn nama “hasilsearch.php”
  • 69. Teknik Informatika - Universitas Kahuripan Kediri Koneksi PHP - MySQL 69
  • 70. 70 Teknik Informatika - Universitas Kahuripan Kediri KONEKSI PHP – MYSQL (INCLUDE) 1. Buat database CREATE DATABASE db_mhs; USE db_mhs; CREATE TABLE mahasiswa( id_mhs int(5), nama varchar(30), alamat varchar(30) ); 2. Isikan data sembarang
  • 71. 71 Teknik Informatika - Universitas Kahuripan Kediri 3. Koneksikan PHP – MySql simpan dengan nama koneksi.php <?php $host = "localhost“; //alamat server mysql $user = "root“; //username mysql $pass = ""; //password mysql $db = "db_mhs“; //nama database //koneksi ke server mysqli $koneksi = mysqli_connect($host,$user,$pass) or die ("Tidak Bisa Konek ke Database"); //koneksi ke database mysqli_select_db($db,$koneksi) or die ("Tidak Menemukan Databasenya"); ?>
  • 72. 72 Teknik Informatika - Universitas Kahuripan Kediri 4. Buat file baca.php <?php include "koneksi.php"; $perintah= "SELECT * FROM mahasiswa"; $query = mysqli_query($perintah); //tampilkan data while($data=mysqli_fetch_array($query)) { echo "nama :".$data['nama']." - alamat: ". $data['alamat']; } ?>
  • 73. 73 Output (cont.) #2 ===== 1 <form action="" method="post"> <table border="1" cellpadding="0" cellspacing="0">  <tr>  <th>No</th>  <th>Username</th>  <th>Password</th>  <th>Action</th>  </tr>  <?php if(mysqli_num_rows($query)>0){ ?> <!-- Jika ditemukan isi data masteruser -->  <?php  $no = 1;  while($data = mysqli_fetch_array($query)){  ?> <!-- looping Baca isi data masteruser -->
  • 74. 74 Output (cont.) #2 ===== 2  <tr>  <td><?php echo $no ?></td>  <td><?php echo $data["userid"];?></td> <!-- Menampilkan isi data userid di table masteruser -->  <td><?php echo $data["pass"];?></td> <!-- Menampilkan isi data pass di table masteruser -->  <td>  <a href="#">Delete</a>  <a href="#">Update</a>  </td>  </tr>  <?php $no++; } ?>  <?php } ?>  </table>  </form>
  • 75. Teknik Informatika - Universitas Kahuripan Kediri 75 Issues  Perhatikan kompleksitas query  Semakin kompleks query yang digunakan, semakin lama waktu eksekusi  Perhatikan koneksi open-close  Non-presistent connection mencegah beban berlebihan di server  Beban di server berbanding lurus dengan jumlah user yang mengakses  Perhatikan sekuritas  Hindari kemungkinan sql-injection  Escape characters
  • 76. Teknik Informatika - Universitas Kahuripan Kediri Sekian - Terima Kasih 76