<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nurwahyudin.Com</title>
	<atom:link href="http://www.nurwahyudin.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nurwahyudin.com</link>
	<description>Just another Tutorials Blog</description>
	<lastBuildDate>Fri, 20 Jan 2012 11:05:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Membuat Sistem Login Dengan PHP</title>
		<link>http://www.nurwahyudin.com/php/membuat-sistem-login-dengan-php</link>
		<comments>http://www.nurwahyudin.com/php/membuat-sistem-login-dengan-php#comments</comments>
		<pubDate>Mon, 12 Dec 2011 04:33:36 +0000</pubDate>
		<dc:creator>maswahyu</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nurwahyudin.com/?p=401</guid>
		<description><![CDATA[Tutorial Details  Difficulty: Beginner Language: PHP Software used: Dreamweaver Estimated Completion Time: 30 minutes Source:  Tutorial kali ini saya ingin membahas tentang pembuatan sistem login sederhana untuk dapat masuk kedalam sistem aplikasi. Tutorial ini merupakan lanjutan dari tutorial sebelumnya: Membuat Aplikasi Input Data Sederhana Dengan PHP, sehingga database yang digunakan adalah database dalam tutorial sebelumnya. Jadi, untuk dapat [...]]]></description>
			<content:encoded><![CDATA[<p><strong style="color: #00a2e3;">Tutorial Details </strong><br />
<strong>Difficulty:</strong> Beginner<br />
<strong>Language:</strong> PHP<br />
<strong>Software used:</strong> Dreamweaver<br />
<strong>Estimated Completion Time:</strong> 30 minutes<br />
<strong>Source: </strong><a class="downloadlink" href="http://www.nurwahyudin.com/download/insert_dan_login" title="Version1 downloaded 116 times" >insert_dan_login (116)</a></p>
<p><span id="more-401"></span></p>
<span class="hr "></span>
<p>Tutorial kali ini saya ingin membahas tentang pembuatan sistem login sederhana untuk dapat masuk kedalam sistem aplikasi. Tutorial ini merupakan lanjutan dari tutorial sebelumnya: <a title="Membuat Aplikasi Input Data Sederhana Dengan PHP" href="http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php" target="_blank">Membuat Aplikasi Input Data Sederhana Dengan PHP</a>, sehingga database yang digunakan adalah database dalam tutorial sebelumnya. Jadi, untuk dapat mengikuti tutorial kali ini, anda harus mengikuti tutorial sebelumnya terlebih dahulu.</p>
<p>Berikut saya tampilkan kembali struktur database dari tutorial sebelumnya.</p>
<table border="0" cellspacing="0" cellpadding="5" align="center">
<thead>
<tr>
<th>Fieldname</th>
<th>Datatype</th>
</tr>
</thead>
<tbody>
<tr>
<td>user_id</td>
<td>int(4), PRIMARY, AUTO INCREMENT</td>
</tr>
<tr>
<td>username</td>
<td>varchar(20)</td>
</tr>
<tr>
<td>password</td>
<td>varchar(255)</td>
</tr>
<tr>
<td>email</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>fullname</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>agama</td>
<td>varchar(15)</td>
</tr>
<tr>
<td>no_hp</td>
<td>bigint(14)</td>
</tr>
</tbody>
</table>
<h2>Langkah 1 &#8211; Form Login</h2>
<span class="hr "></span>
<p>Buat form login dengan mengetikkan kode berikut. Kemudian simpan pada folder yang sama dengan tutorial sebelumnya (folder <strong>belajar</strong>) dengan nama <strong>login.php</strong>.</p>
<pre class="brush: html; gutter: true">&lt;html&gt;
&lt;head&gt;
&lt;title&gt;LOGIN&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h1&gt;LOGIN&lt;/h1&gt;

&lt;?php
//kode php ini kita gunakan untuk menampilkan pesan eror
if (!empty($_GET[&#039;error&#039;])) {
	if ($_GET[&#039;error&#039;] == 1) {
		echo &#039;&lt;h3&gt;Username dan Password belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 2) {
		echo &#039;&lt;h3&gt;Username belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 3) {
		echo &#039;&lt;h3&gt;Password belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 4) {
		echo &#039;&lt;h3&gt;Username dan Password tidak terdaftar!&lt;/h3&gt;&#039;;
	}
}
?&gt;

&lt;form name=&quot;login&quot; action=&quot;otentikasi.php&quot; method=&quot;post&quot;&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;
	&lt;tr&gt;
    	&lt;td&gt;Username&lt;/td&gt;
    	&lt;td&gt;:&lt;/td&gt;
    	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;username&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
	&lt;tr&gt;
    	&lt;td&gt;Password&lt;/td&gt;
    	&lt;td&gt;:&lt;/td&gt;
    	&lt;td&gt;&lt;input type=&quot;password&quot; name=&quot;password&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
	&lt;tr align=&quot;right&quot;&gt;
    	&lt;td colspan=&quot;3&quot;&gt;&lt;input type=&quot;submit&quot; name=&quot;login&quot; value=&quot;Login&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
&lt;/table&gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Untuk melihat halaman login ini, bukalah <em>http://localhost/belajar/login.php</em> pada browser.</p>
<h2>Langkah 2 &#8211; Otentikasi Login</h2>
<span class="hr "></span>
<p>Setelah membuat form login, kita harus membuat sebuah file untuk memproses data login yang dimasukkan user apakah valid atau tidak. Ketikkan kode berikut dan simpan dengan nama <strong>otentikasi.php</strong>.</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;config.php&#039;);

//tangkap data dari form login
$username = $_POST[&#039;username&#039;];
$password = $_POST[&#039;password&#039;];

//untuk mencegah sql injection
//kita gunakan mysql_real_escape_string
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);

//cek data yang dikirim, apakah kosong atau tidak
if (empty($username) &amp;&amp; empty($password)) {
	//kalau username dan password kosong
	header(&#039;location:login.php?error=1&#039;);
	break;
} else if (empty($username)) {
	//kalau username saja yang kosong
	header(&#039;location:login.php?error=2&#039;);
	break;
} else if (empty($password)) {
	//kalau password saja yang kosong
	//redirect ke halaman index
	header(&#039;location:login.php?error=3&#039;);
	break;
}

$q = mysql_query(&quot;select * from user where username=&#039;$username&#039; and password=&#039;$password&#039;&quot;);

if (mysql_num_rows($q) == 1) {
	//kalau username dan password sudah terdaftar di database
	header(&#039;location:index.php&#039;);
} else {
	//kalau username ataupun password tidak terdaftar di database
	header(&#039;location:login.php?error=4&#039;);
}
?&gt;</pre>
<p>Kode diatas akan melakukan pengecekan terhadap inputan user yang berupa username dan password apakah username dan password terdaftar atau tidak dalam database. Penjelasan kode program sudah saya sertakan dalam baris-baris komentar pada kode program tersebut.</p>
<p>Sampai disini, sistem login sudah dapat digunakan. Cobalah buka halaman login dengan membuka <em>http://localhost/belajar/login.php</em> pada browser. Kemudian masukkan username dan password yang sudah dibuat pada <a title="Membuat Aplikasi Input Data Sederhana Dengan PHP" href="http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php">tutorial sebelumnya</a>. Coba juga untuk memasukkan berbagai kondisi yang berbeda seperti memasukkan username dan password yang salah, mengosongkan field username ataupun password, ataupun mengosongkan keduanya untuk menguji sistem otentikasi yang dibuat.</p>
<p>Sistem login memang sudah berhasil, namun jika hanya sampai tahap ini saja maka fungsi login belum berfungsi maksimal karena user masih dapat masuk kedalam aplikasi tanpa harus login terlebih dahulu. Cobalah buka <em>http://localhost/belajar/</em>. Halaman tersebut masih dapat diakses tanpa harus login terlebih dahulu karena kita belum membuat otentikasi pada setiap halaman apakah user harus login terlebih dahulu atau tidak untuk mendapat akses ke setiap halaman.</p>
<h2>Langkah 3 &#8211; Otentikasi pada file-file lain</h2>
<span class="hr "></span>
<p>Agar setiap halaman hanya dapat diakses setelah login, kita perlu menambahkan beberapa baris kode pada file <strong>otentikasi.php</strong> seperti berikut.</p>
<pre class="brush: php; gutter: true; highlight:[4,10,11]">&lt;?php
include(&#039;config.php&#039;);

session_start();

...

if (mysql_num_rows($q) == 1) {
	//kalau username dan password sudah terdaftar di database
	//buat session dengan nama username dengan isi nama user yang login
	$_SESSION[&#039;username&#039;] = $username;

	//redirect ke halaman index
	header(&#039;location:index.php&#039;);
} else {
...</pre>
<p>Untuk dapat membuat otentikasi pada setiap halaman, kita menggunakan session untuk menyimpan data username dari user yang telah login. <em>session_start()</em> digunakan untuk membuat session baru (jika session belum dibuat) ataupun melanjutkan session (jika session sudah dibuat sebelumnya). Kemudian data username disimpan dalam session ini dengan menggunakan perintah <em>$_session['username'] = $username</em> yang berarti menyimpan data username kedalam session dengan nama session adalah username. Selanjutnya, data session inilah yang akan selalu kita gunakan untuk men-cek apakah user sudah login atau belum.</p>
<p>Untuk melakukan pengencekan, buat dokumen baru dan ketikkan kode berikut. Kemudian simpan dengan nama <strong>cek-login.php.</strong></p>
<pre class="brush: php; gutter: true">&lt;?php
session_start();

//jika session username belum dibuat, atau session username kosong
if (!isset($_SESSION[&#039;username&#039;]) || empty($_SESSION[&#039;username&#039;])) {
	//redirect ke halaman login
	header(&#039;location:login.php&#039;);
}
?&gt;</pre>
<p>Kemudian kita harus meng-<em>include</em> kan file <strong>cek-login.php</strong> ini pada file-file yang hanya boleh diakses setelah user login (<strong>index.php, edit.php,</strong> dan <strong>view.php</strong>).</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;cek-login.php&#039;);
?&gt;</pre>
<p>Cobalah buka halaman <strong>index.php, edit.php, </strong>dan <strong>view.php</strong> pada browser. Jika anda belum login, maka anda akan secara otomatis dialihkan ke halaman login. Setelah login, cobalah untuk membuka halaman <strong>login.php.</strong> Masih dapat dibuka? Meskipun anda sudah login? Ya, kita belum membuat pengecekan login pada halaman login itu sendiri.</p>
<p>Tambahkan kode berikut pada file <strong>login.php</strong>.</p>
<pre class="brush: php; gutter: true; highlight:[1,2,3,4,5,6,7]">&lt;?php
session_start();

if (!empty($_SESSION[&#039;username&#039;])) {
	header(&#039;location:index.php&#039;);
}
?&gt;
&lt;html&gt;
&lt;head&gt;
...</pre>
<p>Sekarang cobalah buka halaman <strong>login.php</strong>. Jika anda sudah login, maka anda akan dialihkan ke halaman <strong>index.php</strong>.</p>
<h2>Langkah 4 &#8211; Logout</h2>
<span class="hr "></span>
<p>Sekarang kita buat file untuk logout. Karena kita menggunakan session untuk menyimpan variabel yang digunakan dalam validasi login, maka untuk logout, kita cukup menghapus session yang digunakan. Ketikkan kode berikut dan simpan dengan nama <strong>logout.php.</strong></p>
<pre class="brush: php; gutter: true">&lt;?php
//lanjutkan session yang sudah dibuat sebelumnya
session_start();

//hapus session yang sudah dibuat
session_destroy();

//redirect ke halaman login
header(&#039;location:login.php&#039;);
?&gt;</pre>
<p>Kemudian buat link ke file <strong>logout.php</strong> pada halaman <strong>index.php.</strong></p>
<pre class="brush: html; gutter: true; highlight:[4]">&lt;/table&gt;
&lt;/form&gt;

&lt;a href=&quot;view.php&quot;&gt;Lihat Data&lt;/a&gt; || &lt;a href=&quot;logout.php&quot;&gt;Logout&lt;/a&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Sekarang, sistem login sudah selesai dibuat. Cobalah untuk login dan logout dengan mencoba-coba berbagai kombinasi username  dan password.</p>
<h2>Kesimpulan</h2>
<span class="hr "></span>
<p>Dasar pembuatan sistem login adalah dengan menggunakan session untuk menyimpan data login yang kemudian variabel session inilah yang kita gunakan dalam pengecekan apakah user sudah login ataupun belum. Aplikasi ini hanyalah contoh sederhana penggunaan sistem login. Dalam aplikasi yang lebih kompleks, akan lebih banyak lagi pengecekan yang digunakan. Semoga bermanfaat dan jangan lupa isi komentar ya ^_^.</p>
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nurwahyudin.Com</title>
	<atom:link href="http://www.nurwahyudin.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nurwahyudin.com</link>
	<description>Just another Tutorials Blog</description>
	<lastBuildDate>Fri, 20 Jan 2012 11:05:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Membuat Sistem Login Dengan PHP</title>
		<link>http://www.nurwahyudin.com/php/membuat-sistem-login-dengan-php</link>
		<comments>http://www.nurwahyudin.com/php/membuat-sistem-login-dengan-php#comments</comments>
		<pubDate>Mon, 12 Dec 2011 04:33:36 +0000</pubDate>
		<dc:creator>maswahyu</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.nurwahyudin.com/?p=401</guid>
		<description><![CDATA[Tutorial Details  Difficulty: Beginner Language: PHP Software used: Dreamweaver Estimated Completion Time: 30 minutes Source:  Tutorial kali ini saya ingin membahas tentang pembuatan sistem login sederhana untuk dapat masuk kedalam sistem aplikasi. Tutorial ini merupakan lanjutan dari tutorial sebelumnya: Membuat Aplikasi Input Data Sederhana Dengan PHP, sehingga database yang digunakan adalah database dalam tutorial sebelumnya. Jadi, untuk dapat [...]]]></description>
			<content:encoded><![CDATA[<p><strong style="color: #00a2e3;">Tutorial Details </strong><br />
<strong>Difficulty:</strong> Beginner<br />
<strong>Language:</strong> PHP<br />
<strong>Software used:</strong> Dreamweaver<br />
<strong>Estimated Completion Time:</strong> 30 minutes<br />
<strong>Source: </strong><a class="downloadlink" href="http://www.nurwahyudin.com/download/insert_dan_login" title="Version1 downloaded 116 times" >insert_dan_login (116)</a></p>
<p><span id="more-401"></span></p>
<span class="hr "></span>
<p>Tutorial kali ini saya ingin membahas tentang pembuatan sistem login sederhana untuk dapat masuk kedalam sistem aplikasi. Tutorial ini merupakan lanjutan dari tutorial sebelumnya: <a title="Membuat Aplikasi Input Data Sederhana Dengan PHP" href="http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php" target="_blank">Membuat Aplikasi Input Data Sederhana Dengan PHP</a>, sehingga database yang digunakan adalah database dalam tutorial sebelumnya. Jadi, untuk dapat mengikuti tutorial kali ini, anda harus mengikuti tutorial sebelumnya terlebih dahulu.</p>
<p>Berikut saya tampilkan kembali struktur database dari tutorial sebelumnya.</p>
<table border="0" cellspacing="0" cellpadding="5" align="center">
<thead>
<tr>
<th>Fieldname</th>
<th>Datatype</th>
</tr>
</thead>
<tbody>
<tr>
<td>user_id</td>
<td>int(4), PRIMARY, AUTO INCREMENT</td>
</tr>
<tr>
<td>username</td>
<td>varchar(20)</td>
</tr>
<tr>
<td>password</td>
<td>varchar(255)</td>
</tr>
<tr>
<td>email</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>fullname</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>agama</td>
<td>varchar(15)</td>
</tr>
<tr>
<td>no_hp</td>
<td>bigint(14)</td>
</tr>
</tbody>
</table>
<h2>Langkah 1 &#8211; Form Login</h2>
<span class="hr "></span>
<p>Buat form login dengan mengetikkan kode berikut. Kemudian simpan pada folder yang sama dengan tutorial sebelumnya (folder <strong>belajar</strong>) dengan nama <strong>login.php</strong>.</p>
<pre class="brush: html; gutter: true">&lt;html&gt;
&lt;head&gt;
&lt;title&gt;LOGIN&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h1&gt;LOGIN&lt;/h1&gt;

&lt;?php
//kode php ini kita gunakan untuk menampilkan pesan eror
if (!empty($_GET[&#039;error&#039;])) {
	if ($_GET[&#039;error&#039;] == 1) {
		echo &#039;&lt;h3&gt;Username dan Password belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 2) {
		echo &#039;&lt;h3&gt;Username belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 3) {
		echo &#039;&lt;h3&gt;Password belum diisi!&lt;/h3&gt;&#039;;
	} else if ($_GET[&#039;error&#039;] == 4) {
		echo &#039;&lt;h3&gt;Username dan Password tidak terdaftar!&lt;/h3&gt;&#039;;
	}
}
?&gt;

&lt;form name=&quot;login&quot; action=&quot;otentikasi.php&quot; method=&quot;post&quot;&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;
	&lt;tr&gt;
    	&lt;td&gt;Username&lt;/td&gt;
    	&lt;td&gt;:&lt;/td&gt;
    	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;username&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
	&lt;tr&gt;
    	&lt;td&gt;Password&lt;/td&gt;
    	&lt;td&gt;:&lt;/td&gt;
    	&lt;td&gt;&lt;input type=&quot;password&quot; name=&quot;password&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
	&lt;tr align=&quot;right&quot;&gt;
    	&lt;td colspan=&quot;3&quot;&gt;&lt;input type=&quot;submit&quot; name=&quot;login&quot; value=&quot;Login&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
&lt;/table&gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Untuk melihat halaman login ini, bukalah <em>http://localhost/belajar/login.php</em> pada browser.</p>
<h2>Langkah 2 &#8211; Otentikasi Login</h2>
<span class="hr "></span>
<p>Setelah membuat form login, kita harus membuat sebuah file untuk memproses data login yang dimasukkan user apakah valid atau tidak. Ketikkan kode berikut dan simpan dengan nama <strong>otentikasi.php</strong>.</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;config.php&#039;);

//tangkap data dari form login
$username = $_POST[&#039;username&#039;];
$password = $_POST[&#039;password&#039;];

//untuk mencegah sql injection
//kita gunakan mysql_real_escape_string
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);

//cek data yang dikirim, apakah kosong atau tidak
if (empty($username) &amp;&amp; empty($password)) {
	//kalau username dan password kosong
	header(&#039;location:login.php?error=1&#039;);
	break;
} else if (empty($username)) {
	//kalau username saja yang kosong
	header(&#039;location:login.php?error=2&#039;);
	break;
} else if (empty($password)) {
	//kalau password saja yang kosong
	//redirect ke halaman index
	header(&#039;location:login.php?error=3&#039;);
	break;
}

$q = mysql_query(&quot;select * from user where username=&#039;$username&#039; and password=&#039;$password&#039;&quot;);

if (mysql_num_rows($q) == 1) {
	//kalau username dan password sudah terdaftar di database
	header(&#039;location:index.php&#039;);
} else {
	//kalau username ataupun password tidak terdaftar di database
	header(&#039;location:login.php?error=4&#039;);
}
?&gt;</pre>
<p>Kode diatas akan melakukan pengecekan terhadap inputan user yang berupa username dan password apakah username dan password terdaftar atau tidak dalam database. Penjelasan kode program sudah saya sertakan dalam baris-baris komentar pada kode program tersebut.</p>
<p>Sampai disini, sistem login sudah dapat digunakan. Cobalah buka halaman login dengan membuka <em>http://localhost/belajar/login.php</em> pada browser. Kemudian masukkan username dan password yang sudah dibuat pada <a title="Membuat Aplikasi Input Data Sederhana Dengan PHP" href="http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php">tutorial sebelumnya</a>. Coba juga untuk memasukkan berbagai kondisi yang berbeda seperti memasukkan username dan password yang salah, mengosongkan field username ataupun password, ataupun mengosongkan keduanya untuk menguji sistem otentikasi yang dibuat.</p>
<p>Sistem login memang sudah berhasil, namun jika hanya sampai tahap ini saja maka fungsi login belum berfungsi maksimal karena user masih dapat masuk kedalam aplikasi tanpa harus login terlebih dahulu. Cobalah buka <em>http://localhost/belajar/</em>. Halaman tersebut masih dapat diakses tanpa harus login terlebih dahulu karena kita belum membuat otentikasi pada setiap halaman apakah user harus login terlebih dahulu atau tidak untuk mendapat akses ke setiap halaman.</p>
<h2>Langkah 3 &#8211; Otentikasi pada file-file lain</h2>
<span class="hr "></span>
<p>Agar setiap halaman hanya dapat diakses setelah login, kita perlu menambahkan beberapa baris kode pada file <strong>otentikasi.php</strong> seperti berikut.</p>
<pre class="brush: php; gutter: true; highlight:[4,10,11]">&lt;?php
include(&#039;config.php&#039;);

session_start();

...

if (mysql_num_rows($q) == 1) {
	//kalau username dan password sudah terdaftar di database
	//buat session dengan nama username dengan isi nama user yang login
	$_SESSION[&#039;username&#039;] = $username;

	//redirect ke halaman index
	header(&#039;location:index.php&#039;);
} else {
...</pre>
<p>Untuk dapat membuat otentikasi pada setiap halaman, kita menggunakan session untuk menyimpan data username dari user yang telah login. <em>session_start()</em> digunakan untuk membuat session baru (jika session belum dibuat) ataupun melanjutkan session (jika session sudah dibuat sebelumnya). Kemudian data username disimpan dalam session ini dengan menggunakan perintah <em>$_session['username'] = $username</em> yang berarti menyimpan data username kedalam session dengan nama session adalah username. Selanjutnya, data session inilah yang akan selalu kita gunakan untuk men-cek apakah user sudah login atau belum.</p>
<p>Untuk melakukan pengencekan, buat dokumen baru dan ketikkan kode berikut. Kemudian simpan dengan nama <strong>cek-login.php.</strong></p>
<pre class="brush: php; gutter: true">&lt;?php
session_start();

//jika session username belum dibuat, atau session username kosong
if (!isset($_SESSION[&#039;username&#039;]) || empty($_SESSION[&#039;username&#039;])) {
	//redirect ke halaman login
	header(&#039;location:login.php&#039;);
}
?&gt;</pre>
<p>Kemudian kita harus meng-<em>include</em> kan file <strong>cek-login.php</strong> ini pada file-file yang hanya boleh diakses setelah user login (<strong>index.php, edit.php,</strong> dan <strong>view.php</strong>).</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;cek-login.php&#039;);
?&gt;</pre>
<p>Cobalah buka halaman <strong>index.php, edit.php, </strong>dan <strong>view.php</strong> pada browser. Jika anda belum login, maka anda akan secara otomatis dialihkan ke halaman login. Setelah login, cobalah untuk membuka halaman <strong>login.php.</strong> Masih dapat dibuka? Meskipun anda sudah login? Ya, kita belum membuat pengecekan login pada halaman login itu sendiri.</p>
<p>Tambahkan kode berikut pada file <strong>login.php</strong>.</p>
<pre class="brush: php; gutter: true; highlight:[1,2,3,4,5,6,7]">&lt;?php
session_start();

if (!empty($_SESSION[&#039;username&#039;])) {
	header(&#039;location:index.php&#039;);
}
?&gt;
&lt;html&gt;
&lt;head&gt;
...</pre>
<p>Sekarang cobalah buka halaman <strong>login.php</strong>. Jika anda sudah login, maka anda akan dialihkan ke halaman <strong>index.php</strong>.</p>
<h2>Langkah 4 &#8211; Logout</h2>
<span class="hr "></span>
<p>Sekarang kita buat file untuk logout. Karena kita menggunakan session untuk menyimpan variabel yang digunakan dalam validasi login, maka untuk logout, kita cukup menghapus session yang digunakan. Ketikkan kode berikut dan simpan dengan nama <strong>logout.php.</strong></p>
<pre class="brush: php; gutter: true">&lt;?php
//lanjutkan session yang sudah dibuat sebelumnya
session_start();

//hapus session yang sudah dibuat
session_destroy();

//redirect ke halaman login
header(&#039;location:login.php&#039;);
?&gt;</pre>
<p>Kemudian buat link ke file <strong>logout.php</strong> pada halaman <strong>index.php.</strong></p>
<pre class="brush: html; gutter: true; highlight:[4]">&lt;/table&gt;
&lt;/form&gt;

&lt;a href=&quot;view.php&quot;&gt;Lihat Data&lt;/a&gt; || &lt;a href=&quot;logout.php&quot;&gt;Logout&lt;/a&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Sekarang, sistem login sudah selesai dibuat. Cobalah untuk login dan logout dengan mencoba-coba berbagai kombinasi username  dan password.</p>
<h2>Kesimpulan</h2>
<span class="hr "></span>
<p>Dasar pembuatan sistem login adalah dengan menggunakan session untuk menyimpan data login yang kemudian variabel session inilah yang kita gunakan dalam pengecekan apakah user sudah login ataupun belum. Aplikasi ini hanyalah contoh sederhana penggunaan sistem login. Dalam aplikasi yang lebih kompleks, akan lebih banyak lagi pengecekan yang digunakan. Semoga bermanfaat dan jangan lupa isi komentar ya ^_^.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nurwahyudin.com/php/membuat-sistem-login-dengan-php/feed</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>Membuat Aplikasi Input Data Sederhana Dengan PHP</title>
		<link>http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php</link>
		<comments>http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php#comments</comments>
		<pubDate>Thu, 24 Nov 2011 07:52:41 +0000</pubDate>
		<dc:creator>maswahyu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.nurwahyudin.com/?p=296</guid>
		<description><![CDATA[Tutorial Details  Difficulty: Beginner Language: PHP Software used: Dreamweaver Estimated Completion Time: 1 Hours &#8211; 2 Hours Source:  Untuk mengawali kembalinya blog yang sudah lama tidur ini, saya membuat tutorial untuk aplikasi input data sederhana dengan menggunakan PHP. Dalam tutorial ini akan dipelajari cara untuk membuat koneksi ke database dan CRUD data (Create, Read, Update, Delete) dengan [...]]]></description>
			<content:encoded><![CDATA[<p><strong style="color: #00a2e3;">Tutorial Details </strong><br />
<strong>Difficulty:</strong> Beginner<br />
<strong>Language:</strong> PHP<br />
<strong>Software used:</strong> Dreamweaver<br />
<strong>Estimated Completion Time:</strong> 1 Hours &#8211; 2 Hours<br />
<strong>Source: </strong><a class="downloadlink" href="http://www.nurwahyudin.com/download/insert_dan_login" title="Version1 downloaded 116 times" >insert_dan_login (116)</a></p>
<p><span id="more-296"></span></p>
<span class="hr "></span>
<p>Untuk mengawali kembalinya blog yang sudah lama tidur ini, saya membuat tutorial untuk aplikasi input data sederhana dengan menggunakan PHP. Dalam tutorial ini akan dipelajari cara untuk membuat koneksi ke database dan CRUD data (Create, Read, Update, Delete) dengan studi kasus data user. Tutorial ini belum membahas tentang validasi inputan baik client side maupun server side.</p>
<p>Untuk dapat mengikuti tutorial ini, pastikan anda sudah menginstall server lokal pada PC anda. Saya menggunakan XAMPP sebagai bundled server apache dan PHP.</p>
<h2>Langkah 1 &#8211; Struktur Folder</h2>
<span class="hr "></span>
<p>Buat folder baru pada <em>C:\xampp\htdocs\</em> dengan nama <strong>belajar</strong>. Folder ini akan menjadi area kerja kita dalam membuat aplikasi yang nantinya dapat diakses menggunakan browser dengan mengetikkan <em>localhost/nama_folder</em>. Karena nama folder kita adalah <strong>belajar</strong>, maka untuk mengakses aplikasi ketikkan <em>localhost/belajar</em> pada address bar browser anda.</p>
<h2>Langkah 2 &#8211; Database</h2>
<span class="hr "></span>
<p>Buat database dengan nama <strong>belajar</strong>. Kemudian buat tabel dengan nama <strong>user</strong> dengan data berikut:</p>
<table border="0" cellspacing="0" cellpadding="5" align="center">
<thead>
<tr>
<th>Fieldname</th>
<th>Datatype</th>
</tr>
</thead>
<tbody>
<tr>
<td>user_id</td>
<td>int(4), PRIMARY, AUTO INCREMENT</td>
</tr>
<tr>
<td>username</td>
<td>varchar(20)</td>
</tr>
<tr>
<td>password</td>
<td>varchar(255)</td>
</tr>
<tr>
<td>email</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>fullname</td>
<td>varchar(100)</td>
</tr>
<tr>
<td>agama</td>
<td>varchar(15)</td>
</tr>
<tr>
<td>no_hp</td>
<td>bigint(14)</td>
</tr>
</tbody>
</table>
<h2>Langkah 3 &#8211; File Konfigurasi</h2>
<span class="hr "></span>
<p>Sebelum dapat melakukan CRUD data kedalam database, kita harus membuat koneksi  ke database terlebih dahulu. Tulis kode berikut dengan menggunakan teks editor kesayangan anda <em>(saya pake dreamweaver)</em>.</p>
<pre class="brush: php; gutter: true">&lt;?php
//host yang digunakan
//99,9% tidak perlu dirubah
$host = &#039;localhost&#039;; 

//username untuk login ke host
//biasanya didapatkan pada email konfirmasi order hosting
$user = &#039;root&#039;; 

//jika menggunakan PC sendiri sebagai host,
//secara default password dikosongkan
$pass = &#039;&#039;;

//isikan nama database sesuai database
//yang dibuat pada langkah-1
$dbname = &#039;belajar&#039;;

//mengubung ke host
$connect = mysql_connect($host, $user, $pass) or die(mysql_error());

//memilih database yang akan digunakan
$dbselect = mysql_select_db($dbname);
?&gt;</pre>
<p class="brush: php; gutter: true">File <em>config.php</em> ini nantinya akan banyak kita gunakan pada file-file lain yang perlu menghubung ke server untuk menyimpan, merubah, maupun menghapus data.</p>
<h2 class="brush: actionscript3; gutter: true">Langkah 4 &#8211; Form Input Data</h2>
<p class="brush: actionscript3; gutter: true"><span class="hr "></span></p>
<p class="brush: actionscript3; gutter: true">Ketikkan kode berikut, kemudian simpan dalam folder belajar dengan nama <strong>index.php</strong></p>
<pre class="brush: html; gutter: true">&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Belajar PHP&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h1&gt;Form Input Data&lt;/h1&gt;

&lt;form name=&quot;input_data&quot; action=&quot;insert.php&quot; method=&quot;post&quot;&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;
    &lt;tbody&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Username&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;username&quot; maxlength=&quot;20&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Password&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;password&quot; name=&quot;password&quot; maxlength=&quot;20&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Fullname&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;fullname&quot; maxlength=&quot;100&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Email&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;email&quot; name=&quot;email&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Agama&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;agama&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Nomor HP&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;no_hp&quot; maxlength=&quot;14&quot; required=&quot;required&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
        	&lt;td align=&quot;right&quot; colspan=&quot;3&quot;&gt;&lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;Simpan&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p><em>action=&#8221;insert.php&#8221;</em> adalah file yang digunakan untuk memproses data yang dimasukkan melalui form ini. <em>method=&#8221;post&#8221;</em> adalah metode pengiriman data yang digunakan. Ada dua jenis menthod untuk mengirim data, yaitu <em>post</em> dan <em>get</em>.</p>
<p>Pengiriman dengan method POST berarti bahwa variabel-variabel data tidak ditampilkan pada url, sedangkan pengiriman dengan method GET, variabel-variabel data disertakan pada url sehingga url terlihat seperti ini: <em>localhost/belajar/insert.php?username=namanya&amp;password=passwordnya&amp;fullname=nama_lengkapnya</em></p>
<p><em></em>Sekarang coba buka pada browser anda dengan mengetikkan <em>localhost/belajar</em> pada address bar browser. Akan tampil form input data seperti ini.</p>
<p class="brush: php; gutter: true"><a href="http://www.nurwahyudin.com/wp-content/uploads/2011/11/01.jpg"><img class="size-full wp-image-328 aligncenter" title="form input data" src="http://www.nurwahyudin.com/wp-content/uploads/2011/11/01.jpg" alt="form input data" width="268" height="318" /></a></p>
<h2 class="brush: php; gutter: true">Langkah 5 &#8211; Menyimpan Data</h2>
<span class="hr "></span>
<p>Ketikkan kode berikut, kemudian dengan nama <strong>insert.php</strong></p>
<pre class="brush: php; gutter: true">&lt;?php
//panggil file config.php untuk menghubung ke server
include(&#039;config.php&#039;);

//tangkap data dari form
$username = $_POST[&#039;username&#039;];
$password = $_POST[&#039;password&#039;];
$fullname = $_POST[&#039;fullname&#039;];
$email = $_POST[&#039;email&#039;];
$agama = $_POST[&#039;agama&#039;];
$no_hp = $_POST[&#039;no_hp&#039;];

//simpan data ke database
$query = mysql_query(&quot;insert into user values(&#039;&#039;, &#039;$username&#039;, &#039;$password&#039;, &#039;$email&#039;, &#039;$fullname&#039;, &#039;$agama&#039;, &#039;$no_hp&#039;)&quot;) or die(mysql_error());

if ($query) {
	header(&#039;location:index.php?message=success&#039;);
}
?&gt;</pre>
<p class="brush: php; gutter: true"><em>include()</em> digunakan untuk menyertakan file lain dalam file ini. Ingat bahwa pada langkah pertama kita sudah membuat file <em>config.php</em> yang berisi konfigurasi untuk menghubung ke server, maka setiap kali kita perlu untuk menghubung ke database, kita cukup memanggil file <em>config.php</em> saja tanpa harus menuliskan kembali kode-kodenya.</p>
<p class="brush: php; gutter: true"><em>$_POST['name']</em> digunakan untuk menangkap value yang dikirim dari form. Untuk menangkap data, gunakan <em>name</em> yang sama dengan <em>name</em> dari form. Contoh: untuk menangkap data <em>username</em> dari form, maka gunakan <em>$_POST['username']</em>.</p>
<p class="brush: php; gutter: true"><em>mysql_query()</em> digunakan untuk menjalankan script SQL. Pada langkah ini, script SQL yang kita gunakan adalah untuk menambah data ke database.</p>
<p class="brush: php; gutter: true">Tambahkan kode berikut pada file <em>index.php</em> setelah <em>&lt;h1&gt;&lt;/h1&gt;</em> untuk menampilkan pesan sukses ketika berhasil menyimpan data.</p>
<pre class="brush: php; gutter: true; highlight:[4,5,6,7,8]">...
&lt;h1&gt;Form Input Data&lt;/h1&gt;

&lt;?php
if (!empty($_GET[&#039;message&#039;]) &amp;&amp; $_GET[&#039;message&#039;] == &#039;success&#039;) {
	echo &#039;&lt;h3&gt;Berhasil menambah data!&lt;/h3&gt;&#039;;
}
?&gt;

&lt;form name=&quot;input_data&quot; action=&quot;insert.php&quot; method=&quot;post&quot;&gt;
...</pre>
<p class="brush: php; gutter: true">Sekarang coba jalankan aplikasi dengan membuka <em>localhost/belajar</em> dan isikan data pada form dan klik tombol simpan. Jika berhasil, anda akan melihat pesan <strong>Berhasil menambah data!</strong> seperti gambar dibawah. Jika gagal, periksa kembali kode yang anda tuliskan. Pastikan tidak ada salah pengetikan.</p>
<p class="brush: php; gutter: true"><a href="http://www.nurwahyudin.com/wp-content/uploads/2011/11/02.jpg"><img class="aligncenter size-full wp-image-342" title="berhasil input data" src="http://www.nurwahyudin.com/wp-content/uploads/2011/11/02.jpg" alt="berhasil input data" width="271" height="359" /></a></p>
<h2>Langkah 6 &#8211; Menampilkan Data</h2>
<span class="hr "></span>
<p>Setelah kita berhasil menyimpan data kedalam database, sekarang kita buat halaman untuk menampilkan data-data yang sudah kita simpan. Ketikkan kode berikut dan simpan dengan nama <strong>view.php</strong></p>
<pre class="brush: html; gutter: true">&lt;?php
include(&#039;config.php&#039;);
?&gt;

&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Belajar PHP&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h1&gt;Data User&lt;/h1&gt;

&lt;a href=&quot;index.php&quot;&gt;+ Tambah Data&lt;/a&gt;

&lt;table border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;
	&lt;thead&gt;
    	&lt;tr&gt;
        	&lt;td&gt;No.&lt;/td&gt;
        	&lt;td&gt;Username&lt;/td&gt;
        	&lt;td&gt;Password&lt;/td&gt;
        	&lt;td&gt;Email&lt;/td&gt;
        	&lt;td&gt;Fullname&lt;/td&gt;
        	&lt;td&gt;Agama&lt;/td&gt;
        	&lt;td&gt;No. HP&lt;/td&gt;
        	&lt;td&gt;Opsi&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/thead&gt;
    &lt;tbody&gt;
    &lt;?php
	$query = mysql_query(&quot;select * from user&quot;);

	$no = 1;
	while ($data = mysql_fetch_array($query)) {
	?&gt;
    	&lt;tr&gt;
        	&lt;td&gt;&lt;?php echo $no; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;username&#039;]; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;password&#039;]; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;email&#039;]; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;fullname&#039;]; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;agama&#039;]; ?&gt;&lt;/td&gt;
        	&lt;td&gt;&lt;?php echo $data[&#039;no_hp&#039;]; ?&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href=&quot;#&quot;&gt;Edit&lt;/a&gt; || &lt;a href=&quot;#&quot;&gt;Hapus&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;?php
		$no++;
	}
	?&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Kemudian tambahkan kode berikut pada file <strong>index.php</strong> setelah <em>&lt;/form&gt; </em>sebelum <em>&lt;/body&gt;</em>.</p>
<pre class="brush: html; gutter: true; highlight:[4]">...
&lt;/form&gt;

&lt;a href=&quot;view.php&quot;&gt;Lihat Data&lt;/a&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Sekarang bukalah <em>localhost/belajar/view.php</em> untuk melihat hasilnya.</p>
<p><a href="http://www.nurwahyudin.com/wp-content/uploads/2011/11/03.jpg"><img class="aligncenter size-full wp-image-356" title="view data" src="http://www.nurwahyudin.com/wp-content/uploads/2011/11/03.jpg" alt="view data" width="560" height="160" /></a></p>
<p>Pada kolom opsi terdapat dua menu, yaitu edit dan hapus. Pada langkah ini, kedua menu tersebut masih belum dapat digunakan. Pada langkah berikutnya akan kita buat menu edit tersebut.</p>
<h2>Langkah 7 &#8211; Merubah/Update Data</h2>
<span class="hr "></span>
<p>Dalam menginputkan data bisa terjadi kesalahan seperti kesalahan input, kesalahan data yang dimasukkan, ataupun lainnya. Untuk itu, data yang sudah disimpan harus dapat dirubah sehingga kesalahan dapat diperbaiki.</p>
<p>Pada dasarnya, form untuk mengedit data adalah sama dengan form untuk menginputkan data. Hanya saja pada form untuk mengedit data, form tersebut harus menampilkan data yang akan dirubah.</p>
<p>Untuk itu, buat file baru dengan nama <strong>edit.php</strong>, kemudian <em>copy</em>-kan semua kode yang ada pada file <strong>index.php</strong> kedalam file <strong>edit.php</strong>. Selanjutnya kita harus menambahkan beberapa kode agar form edit dapat menampilkan data yang akan di edit.</p>
<p>Kode untuk file <strong>edit.php</strong> menjadi seperti ini. Highlight yang saya berikan adalah baris-baris kode yang ditambahkan ataupun dirubah.</p>
<pre class="brush: html; gutter: true; highlight:[1,2,3,13,14,15,16,17,18,19,21,22,28,33,38,43,48,53]">&lt;?php
include(&#039;config.php&#039;);
?&gt;

&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Belajar PHP&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h1&gt;Form Input Data&lt;/h1&gt;

&lt;?php
$id = $_GET[&#039;id&#039;];

$query = mysql_query(&quot;select * from user where user_id=&#039;$id&#039;&quot;) or die(mysql_error());

$data = mysql_fetch_array($query);
?&gt;

&lt;form name=&quot;update_data&quot; action=&quot;update.php&quot; method=&quot;post&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;user_id&quot; value=&quot;&lt;?php echo $id; ?&gt;&quot; /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;
    &lt;tbody&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Username&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;username&quot; maxlength=&quot;20&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;username&#039;]; ?&gt;&quot; disabled /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Password&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;password&quot; name=&quot;password&quot; maxlength=&quot;20&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;password&#039;]; ?&gt;&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Fullname&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;fullname&quot; maxlength=&quot;100&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;fullname&#039;]; ?&gt;&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Email&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;email&quot; name=&quot;email&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;email&#039;]; ?&gt;&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Agama&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;agama&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;agama&#039;]; ?&gt;&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    	&lt;tr&gt;
        	&lt;td&gt;Nomor HP&lt;/td&gt;
        	&lt;td&gt;:&lt;/td&gt;
        	&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;no_hp&quot; maxlength=&quot;14&quot; required=&quot;required&quot; value=&quot;&lt;?php echo $data[&#039;no_hp&#039;]; ?&gt;&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
        	&lt;td align=&quot;right&quot; colspan=&quot;3&quot;&gt;&lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;Simpan&quot; /&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;/form&gt;

&lt;a href=&quot;view.php&quot;&gt;Lihat Data&lt;/a&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Kemudian ubah link pada file <strong>view.php</strong> menjadi seperti ini.</p>
<pre class="brush: html; gutter: true">&lt;td&gt;&lt;a href=&quot;edit.php?id=&lt;?php echo $data[&#039;user_id&#039;]; ?&gt;&quot;&gt;Edit&lt;/a&gt; || &lt;a href=&quot;#&quot;&gt;Hapus&lt;/a&gt;&lt;/td&gt;</pre>
<p>Umumnya, username seseorang tidak boleh dirubah setelah ia terdaftar. Untuk membuat agar field input username tidak dapat dirubah, kita gunakan atribut <em>disabled. </em>Sampai langkah ini kita belum dapat melakukan perubahan data, kita baru dapat menampilkan data pada form edit. Untuk merubah data pada database, kita perlu membuat <em>query</em> SQL lagi untuk meng-<em>update</em> database dengan data yang baru.</p>
<p>Buat file baru dengan nama <strong>update.php</strong> dan ketikkan kode berikut.</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;config.php&#039;);

//tangkap data dari form
$id = $_POST[&#039;user_id&#039;];
$password = $_POST[&#039;password&#039;];
$fullname = $_POST[&#039;fullname&#039;];
$email = $_POST[&#039;email&#039;];
$agama = $_POST[&#039;agama&#039;];
$no_hp = $_POST[&#039;no_hp&#039;];

//update data di database sesuai user_id
$query = mysql_query(&quot;update user set password=&#039;$password&#039;, fullname=&#039;$fullname&#039;, email=&#039;$email&#039;, agama=&#039;$agama&#039;, no_hp=&#039;$no_hp&#039; where user_id=&#039;$id&#039;&quot;) or die(mysql_error());

if ($query) {
	header(&#039;location:view.php?message=success&#039;);
}
?&gt;</pre>
<p>Kemudian tambahkan baris kode berikut pada file <strong>view.php</strong> setelah <em>&lt;h1&gt;&lt;/h1&gt;</em> (sama seperti pada file index.php).</p>
<pre class="brush: php; gutter: true">&lt;?php
if (!empty($_GET[&#039;message&#039;]) &amp;&amp; $_GET[&#039;message&#039;] == &#039;success&#039;) {
	echo &#039;&lt;h3&gt;Berhasil meng-update data!&lt;/h3&gt;&#039;;
}
?&gt;</pre>
<p>Sekarang bukalah halaman <strong>view.php</strong> pada browser dan ubah-lah salah satu data yang sudah di inputkan dengan meng-klik tombol edit.</p>
<p><a href="http://www.nurwahyudin.com/wp-content/uploads/2011/11/05.jpg"><img class="aligncenter size-full wp-image-371" title="form edit data" src="http://www.nurwahyudin.com/wp-content/uploads/2011/11/05.jpg" alt="form edit data" width="280" height="360" /></a><a href="http://www.nurwahyudin.com/wp-content/uploads/2011/11/04.jpg"><img class="aligncenter size-full wp-image-372" title="berhasil edit data" src="http://www.nurwahyudin.com/wp-content/uploads/2011/11/04.jpg" alt="berhasil edit data" width="600" height="200" /></a></p>
<h2>Langkah 8 &#8211; Menghapus/Delete Data</h2>
<span class="hr "></span>
<p>Setelah bisa menambah dan merubah data, sekarang kita buat untuk menghapus data. Buat file baru dengan nama <strong>delete.php</strong> dan ketikkan kode berikut.</p>
<pre class="brush: php; gutter: true">&lt;?php
include(&#039;config.php&#039;);

$id = $_GET[&#039;id&#039;];

$query = mysql_query(&quot;delete from user where user_id=&#039;$id&#039;&quot;) or die(mysql_error());

if ($query) {
	header(&#039;location:view.php?message=delete&#039;);
}
?&gt;</pre>
<p>Kemudian tambahkan kode pada link dalam file <strong>view.php</strong> seperti berikut.</p>
<pre class="brush: html; gutter: true">&lt;td&gt;
	&lt;a href=&quot;edit.php?id=&lt;?php echo $data[&#039;user_id&#039;]; ?&gt;&quot;&gt;Edit&lt;/a&gt; ||
	&lt;a href=&quot;delete.php?id=&lt;?php echo $data[&#039;user_id&#039;]; ?&gt;&quot;&gt;Hapus&lt;/a&gt;
&lt;/td&gt;</pre>
<p>Sekarang cobalah untuk menghapus beberapa data yang sudah di-input-kan.</p>
<h2>Kesimpulan</h2>
<span class="hr "></span>
<p>Cobalah ber-eksperimen membuat aplikasi dengan lebih banyak input-an data sehingga tabel didalam database juga menjadi semakin banyak, agar pemahaman konsep dasar tentang pembuatan aplikasi web dengan PHP semakin kental dan mendalam.</p>
<p>Untuk pembuatan aplikasi yang lebih kompleks, tentu tutorial ini tidak cukup karena masih banyak sekali yang harus disertakan seperti validasi, security, user interface, dan banyak lagi materi lainnya yang akan dibahas dalam tutorial berikutnya.</p>
<p>I hope you enjoyed this tutorial and have learn something new today. Yang berhasil mengikuti tutorial, WAJIB isi komentar! Yang masih error, juga WAJIB isi komentar! Karena isi komentar itu hukumnya WAJIB&#8230; haha <img src='http://www.nurwahyudin.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nurwahyudin.com/php/membuat-aplikasi-input-data-sederhana-dengan-php/feed</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
	</channel>
</rss>

