Latar Belakang
Banyak aplikasi yang saya buat mempunyai halaman admin, sebelum ke halaman admin user harus login memasukan username dan password.
Namun kendalanya teman-teman yang mencoba aplikasi yang saya buat, ada yang gagal login. Bisa karena perbedaan software atau versinya yang dipakai misalnya xampp, phptriad, wampp, Lampp atau install masing-masing komponen (database mysql, web server Apache, compiler PHP). Sampai saat ini dalam mengembangkan web, saya menggunakan software XAMPP versi 1.7.3
Dalam artikel ini akan saya coba bahas bagaimana mengatasi gagal login tersebut. Jika solusi yang saya berikan belum berhasil. tapi teman-teman mempunyai cara atau solusi lain yang lebih baik, silahkan di share komentar pada artikel ini.
Contoh Aplikasi
- Membuat-web-absensi-online-dengan-php-dan-mysql
- Membuat-web-ujian-online-dengan-php-dan-mysql
- Membuat-web-multimedia-dengan-php-dan-mysql
- Membuat-web-e-commerce-dengan-php-dan-mysql
- Membuat-situs-akuntansi-online-e-accounting-dengan-php-dan-mysql
- Membuat-situs-social-network-menggunakan-php-dan-mysql
- Membuat-sistem-informasi-nilai-online-dengan-php-dan-mysql
- Membuat-sistem-informasi-bimbingan-konseling-dengan-php-dan-mysql
Langsung saja saya coba jelaskan penyebab gagal login yang biasa dialami
1. Import Database
Langkah pertama yang harus dilakukan adalah import database tersebut ke MySQL menggunakan tools PHPMyAdmin. nama database diusahakan sama dengan nama file database yang di download misalnya db_sino.sql.zip berarti nama databasenya adalah db_sino. Namun jika ingin berbeda nama, maka nanti harus di sesuaikan dengan konfigurasi koneksi di file conn.php. artikelnya disini.
Jika Import database gagal atau error dengan cara upload file .sql.zip, maka extract terlebih dahulu file database sampai terdapat file .sql . edit file tersebut dengan notepat, kemudian copy semua query yang ada di file tersebut. paste di tab SQL yang ada di phpmyadmin.
2. Konfigurasi File Koneksi Database
Setelah database berhasil disiapkan, langkah selanjutnya adalah Cek file konfigurasi. tidak ada standar khusus pengenai penamaan file untuk koneksi database. namun biasanya dinamai dengan conn.php, koneksi.php, atau connection.php.
Silahkan cek nilai variable host biasanya localhost, username biasanya root, password di kosongkan dengan tanda kutip 2. jangan lupa cek nama database pada variable db. sesuaikan dengan nama database pada point 1 import database.
3. Setting Short_Open_Tag
Untuk menghindari perbedaan versi PHP antara versi 4 dengan versi 5. karena versi 4 penulisan tag pembuka php cukup dengan kurung siku dan tanda tanya.
Sedangkan untuk PHP 5 selain kurung siku dan tanda tanya, ditambah dengan kata php (<!–?php). oleh karena itu short_open_tag harus dalam kondisi ON. silahkan baca artikelnya konversi-php4-ke-php5
4. Cek pembuatan SESSION
Setelah user berhasil login, akan ada script untuk pembuatan session sebagai kunci user untuk menuju halaman admin. Silahkan baca referensinya function-session-register-php
untuk PHP 4 pembuatan session menggunakan script :
$id_user;
$username;
session_register(“id_user”);
session_register(“username”);
untuk PHP 5 pembuatan session menggunakan script :
$id_user;
$username;
$_SESSION[‘id_user’]=$id_user;
$_SESSION[‘username’]=$username;
5. Cek SESSION LOGIN
Setelah session berhasil dibuat, saat user menuju halaman admin. akan ada script untuk pengecekan session.
untuk PHP 4 pengecekan session menggunakan script :
if(session_is_registered (‘id_user’)){
untuk PHP 5 pengecekan session menggunakan script :
if(isset($_SESSION[‘id_user’])){
6. Cek username dan password
Jika semuanya sudah dicek namun belum berhasil login, silahkan cek value pada field username dan field password yang valid sesuai yang ada di database. biasanya pada table user, atau table admin.
untuk password menggunakan fungsi MD5 untuk endkripsi password, sehingga password di database tidak dapat dibaca oleh user lain. silahkan baca referensinya Panduan-belajar-membuat-web-dengan-php-dan-mysql
7. Menyembunyikan pesan error
Jika terdapat pesan error di halaman web seperti ini :
- Notice: Undefined index
- Notice: A session had already been started – ignoring session_start()
Penyebab error tersebut terjadi adalah :
- PHP versi terbaru tidak mengijinkan variabel GET atau POST dalam keadaan kosong.
- Untuk menggunakan nilai pada variable GET atau POST tambahkan if isset untuk cek apakah sudah ada nilai atau belum.
Bisa di sembunyikan dengan syntax berikut ini, namun tidak di rekomendasikan karena menutupi kelemahan coding :
- error_reporting(E_ALL ^ E_NOTICE);
- ini_set(‘display_errors’,FALSE);
Letakan sintax tersebut di halaman home.php atau halaman conn.php. silahkan baca artikelnya disini.
Sekian artikel dari saya, semoga bermanfaat untuk teman-teman dan anda semua…aamiin
Cilangkap, 22-08-2013
KangAgus
Filed under: Website | Tagged: Admin, cara, gagal, halaman, login, Mengatasi |
saya coba masih gagal aja ya, kenapa dan juga saya punya data di database yang ditampilkan seseuai key yang ada di address bar tidak bisa tampil
contoh addres bar menyebutkan : “www.xxx.hosting.gratis/nama.php?key=1”
mestinya pada halaman privew menampilkan data dari database hasil pemilihan key yang disebutkan di address bar, namun kosong tidak ada data yang ditampilkan, bisa bantu saya tidak kenapa?
LikeLike
coba di cek lagi fungsi GET untuk menangkap nilai parameter di url
LikeLike
Mohon Pencerahan nya gimana menambah fungsi perkalian di keranjang ny sehingga apabila nila dimasukam langsung mengkalkulasikan banyak barang yg di psan
…
LikeLike
langkah no 2 itu masih bingung…
conn.php, koneksi.php, atau connection.php kok gak ada?
LikeLike
di searching ada mba
LikeLike
Jika database sudah ada di server UBuntu, login gagal om..bagaimana ?
LikeLike
terima kasih banyak gan infonya udah bisa pagenya.
LikeLike
assalamualaikum..
kenpa yah, kok pas saya mau login selalu muncul kata
“Maaf, Anda tidak berhak mengakses halaman ini!!”
mohon bantuannya mas..
LikeLike
waalaikum salam wr.wb
sepertinya gagal saat membuat session. silahkan sesuaikan dengan fungsi pembuatan session PHP terbaru. biasanya semakin tinggi versi xampp yang digunakan. semakin tinggi juga versi PHP dan MySQL yang digunakan. untuk belajar biasanya saya versi 1.8.3. lumayan lama sih. di tempat saya bekerja juga pakai versi itu. semoga berhasil 🙂
LikeLike
masih belum berhasil login aplikasi SINO, udah cek semua, sudah sesuai intruksi di atas sampe versi xampp sudah saya sesuaikan juga, apanya ya yg masih salaahh T_T
LikeLike
jika butuh bantuan via remote desktop silahkan ya mba. hubungi WA saya.
LikeLike
kalau begini apa masalahnya? : Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /storage/ssd4/060/10828060/public_html/koneksi.php:7 Stack trace: #0 /storage/ssd4/060/10828060/public_html/index.php(2): include() #1 {main} thrown in /storage/ssd4/060/10828060/public_html/koneksi.php on line 7
LikeLike