Membuat Formulir Registrasi Pengguna dengan PHP dan Mysql
Berikut ini adalah dasar prosedur membuat formulir registrasi pengguna dengan menggunakan php dan mysql.
Pertama, pastikan Apache dan Mysql dalam xampp control panel berada dalam kondisi aktif.
buat database baru |
memberi nama database |
Selanjutnya buat tabel baru di database beserta jumlah kolom yang diinginkan, contoh :
informasi_pengguna
;jumlah kolom : 2.membuat tabel di database |
Pada tabel
informasi_pengguna
, tambahkan kolom seperti berikut ini:membuat kolom baru |
Sampai di sini pembuatan database selesai. Sekarang beralih ke pembuatan dokumen koneksi. buatdokumen php, misal
koneksi.php
. Kemudian tambahkan kode php berikut ini didalamnya.<?php
$namahost = "localhost";//nama hosting yang digunakan
$namaPengguna = "root"; //username default untuk bisa masuk/login di localhost
$katasandi = "";
$nama_dbase = "db_situs";
$koneksi = mysql_connect($namahost,$namaPengguna,$katasandi);
$database = mysql_select_db($nama_dbase);
//cek koneksi
if(!$koneksi)//jika koneksi tidak ada
echo "Koneksi Gagal";
//cek database
if(!$database)//jika database tidak aktif atau tidak ditemukan
echo "Database tidak ditemukan";
?>
Selanjutnya buat form agar pengguna bisa memasukkan identitas didalamnya dengan menggunakan HTML, beri nama dokumen
pendaftaran.php
<html>
<head>
<title>index-access : Pendaftaran</title>
</head>
<body>
<form action="konfirmasi.php" method="POST">
<table>
<tr>
<td>Nama Lengkap</td><td>:</td><td><input type="text" name="nama_pengguna" placeholder="Tulis Nama Lengkap Anda" maxlength="50"/></td>
</tr>
<tr>
<td>Password</td><td>:</td><td><input type="password" name="kata_sandi" placeholder="Kata Sandi Anda" maxlength="15"/></td>
<tr/>
<tr>
<td>Ulangi Password</td><td>:</td><td><input type="password" name="ulang_katasandi" placeholder="ulangi kata sandi" maxlength="15"/></td>
<tr/>
</table>
<input type="submit" value="Daftar"/><br/>
<a href="index.php">index</a>
</form>
</body>
</html>
Kemudian buat dokumen baru, beri nama
konfirmasi.php
, dengan isi sebagai berikut:<?php
//include berfungsi untuk mengkoneksikan kodingan dengan localhost
include('koneksi.php');
//berikutnya.(masukkan kode di sini)..
?>
Anda bisa memilih menggunakan
include
atau require_once
.Selanjutnya, lakukan inisiasi terhadap name yang dikirimkan oleh
dokumen.php
//menginisiasi variabel-variabel yang dikirimkan dari form-->input name
//fix problem : undefined index...
if( isset($_POST['nama_pengguna']) &&
isset($_POST['kata_sandi']) &&
isset($_POST['ulang_katasandi'])
)
{
$namapengguna = $_POST['nama_pengguna'];
$katasandi = $_POST['kata_sandi'];
$ulangkatasandi = $_POST['ulang_katasandi'];
}else{
//otomatis mengalihkan ke halaman pendaftaran jika terjadi undefined index
header("location:pendaftaran.php");
}//kode berikutnya di sini
Tambahkan Syntax untuk mengkoreksi jika terjadi kesalahan masukan data, yaitu jika pengguna belum memasukkan data pada salah satu atau beberapa kolom
if(empty($namapengguna) || //jika nama_pengguna kosong
empty($katasandi) || //jika kata_sandi kosong
empty($ulangkatasandi) //jika ulang_katasandi kosong
)
{
//pernyataan yang keluar jika salah satu atau beberapa kemungkinan di atas terjadi
echo "ada kolom yang belum diisi";
}else{
//jika user telah memasukkan semua data yang dibutuhkan
//kode berikutnya di sini
}
Kesalahan masukan data sudah teratasi dengan kodingan di atas. Selanjutnya lakukan sesuatu ketikauser memasukkan seluruh data tanpa ada yang kosong, dan koreksi apakah sandi yang dimasukkan sudah benar
//jika user telah memasukkan semua data yang dibutuhkan, koreksi kata sandi
if($katasandi == $ulangkatasandi){
//jika kata sandi sama
//kode berikutnya di sini
}else{
//jika kata sandi tidak sama
echo "kata sandi tidak sama";
}
Selanjutnya, Anggap bahwa pengguna telah memasukkan kata sandi dengan benar. Ambil informasi dari dalam tabel dengan nama
informasi_pengguna
pada kolom namaPengguna
. Pada fungsi ini program terlebih dulu membuka informasi dari dalam database yang akan digunakan untuk mengecek ketersediaan data namaPengguna, sudah ada yang menggunakannya atau belum.//mengambil informasi dari nama tabel informasi_pengguna
pada kolom "namaPengguna"
$ambilDataSql = mysql_query("SELECT * FROM informasi_pengguna WHERE namaPengguna = '$namapengguna'");
//mengambil informasi dari seluruh kolom namaPengguna
$cek_namapengguna = mysql_num_rows($ambilDataSql);
//mengecek ketersediaan identitas
if($cek_namapengguna == 0){//jika nama pengguna tidak ditemukan/belum terdaftar
//lakukan penambahan data
mysql_query("INSERT INTO informasi_pengguna VALUES('$namapengguna','$katasandi')");
echo "pendaftaran berhasil";
}else{
echo "nama pengguna sudah terdaftar";
}
Keseluruhan dari
konfirmasi.php
adalah seperti berikut: <?php
//include berfungsi untuk mengkoneksikan kodingan dengan localhost
include('koneksi.php');
//menginisiasi variabel-variabel yang dikirimkan dari form-->input name
//fix problem : undefined index...
if( isset($_POST['nama_pengguna']) &&
isset($_POST['kata_sandi']) &&
isset($_POST['ulang_katasandi'])
)
{
$namapengguna = $_POST['nama_pengguna'];
$katasandi = $_POST['kata_sandi'];
$ulangkatasandi = $_POST['ulang_katasandi'];
}else{
//otomatis mengalihkan ke halaman pendaftaran jika terjadi undefined index
header("location:pendaftaran.php");
}
if (
empty($namapengguna) || //jika nama_pengguna kosong
empty($katasandi) || //jika kata_sandi kosong
empty($ulangkatasandi) //jika ulang_katasandi kosong
)
{
//pernyataan yang keluar jika salah satu atau beberapa kemungkinan di atas terjadi
echo "ada kolom yang belum diisi";
echo "<a href='pendaftaran.php'>Kembali ke halaman pendaftaran</a>";
}else{
//jika user telah memasukkan semua data yang dibutuhkan, koreksi kata sandi
if($katasandi == $ulangkatasandi){
//jika kata sandi sama
//mengambil informasi dari nama tabel "informasi_pengguna" pada kolom "namaPengguna"
$ambilDataSql = mysql_query("SELECT * FROM informasi_pengguna WHERE namaPengguna = '$namapengguna'");
//mengambil informasi dari seluruh kolom namaPengguna
$cek_namapengguna = mysql_num_rows($ambilDataSql);
//mengecek ketersediaan identitas
if($cek_namapengguna == 0){//jika nama pengguna tidak ditemukan/belum terdaftar
//lakukan penambahan data
mysql_query("INSERT INTO informasi_pengguna VALUES('$namapengguna','$katasandi')");
echo "pendaftaran berhasil";
echo "<a href='pendaftaran.php'>Kembali ke halaman pendaftaran</a>";
}else{
echo "nama pengguna sudah terdaftar";
echo "<a href='pendaftaran.php'>Kembali ke halaman pendaftaran</a>";
}
}else{
//jika kata sandi tidak sama
echo "kata sandi tidak sama";
echo "<a href='pendaftaran.php'>Kembali ke halaman pendaftaran</a>";
}
}
?>
Tambahkan dokumen
index.php
untuk melihat isi data yang sudah Anda buat dalam bentuk tabel<html>
<head>
<title>index-access : Halaman Utama</title>
</head>
<body>
<?php
//koneksi ke database
include('koneksi.php');
//ambil data pada kolom nama pengguna di tabel informasi_pengguna
$kueri = mysql_query("SELECT namaPengguna FROM informasi_pengguna");
//inisiasi variabel yang digunakan untuk memberikan nomor pada tabel
$number = 0;
//buat tabel yang menayangkan data
echo "<table>";
echo "<tr>";
echo "<th>Nomor</th><th>nama</th>";
echo "</tr>";
while($user = mysql_fetch_assoc($kueri)){
$number++;
echo "<tr>";
echo "<td>".$number."</td><td>".$user['namaPengguna']."</td>";
echo "</tr>";
}
echo "</table>";
?>
<a href="pendaftaran.php">Tambah Data</a>
</body>
</html>
Simpan dokumen-dokumen ini dalam satu folder, misalkan folder
registrasiPengguna
0 on: "Membuat Formulir Registrasi Pengguna dengan PHP dan Mysql"