63 Tanggapan to “Membuat halaman login dengan session”

  1. rega Says:

    mw dcoba dulu ya kakak…
    TQ before…

  2. dwi Says:

    thanks,

  3. alifaiq Says:

    sama-sama silahkan

  4. Gabrielle Says:

    Salam kenal,

    Mas kalo copy paste source code t4 masnya kok tanda kutipnya tdk dikenali y? Hrs dganti lg penulisan semua tanda petiknya

    Thx b4

  5. koko Says:

    mas ajarin cara panggunaan PHP dong…???
    THX… at yonathanslow@yahoo.com

  6. Musa Abdilah Says:

    slm kenal mas. script di atas bisa ga dipakai di blogspot/wordpress?

  7. alifaiq Says:

    salam kenal balik, mm.. blogspot(.com) dan wordpress(.com) setahu saya tidak mendukung penulisan kode program sendiri, kecuali anda menggunakan CMS WordPress dimana kode program anda bisa buka..


  8. […] lagi posting yang lalu tentang membuat halaman login dengan session sekilas tidak ditemukan kendala namun untuk versi PHP yang baru (5.3.1 keatas) baru dijumpai […]


  9. tank ya buat tutorialnya… salam kenal… Zaky

  10. alec Says:

    Oom ali, tu kayanya yg bagian index.php ada yg kurang tepat deh, tu yg bagian awalnya () harus diilangin. Tul ga sih..??

  11. alifaiq Says:

    @alec
    yang bagian mana ya?? open_connection() kah?
    itu digunakan untuk memanggil fungsi koneksi ke database ($link)

  12. agus Says:

    Hallo mas,
    Saya ingin menanyakan, bagaimana cara membuat login, dengan menu.php nya berdasarkan nama loginnya.
    jadi jika user A login maka, ia hanya bisa masuk ke halaman menu A saja, demikian juga user B hanya bisa masuk ke menu B saja.

    salam

    • alifaiq Says:

      Anda bisa gunakan: if .. then .. else
      misalnya,

      if ($uname=='Budi')
      {
        ..isi halaman untuk Budi
      }
      else if ($uname=='Agus')
      {
        ..isi halaman untuk Agus
      }
      

      biar lebih ringkas isi halaman dibikin file tersendiri misalnya:

      if ($uname=='Budi')
      {
        include "budi.php";
      }
      else if ($uname=='Agus')
      {
        include "agus.php";
      }
      
  13. mizwar Says:

    kalo untuk update atau rubah passwordnya gimana listing programnya?

  14. alifaiq Says:

    Pada dasarnya untuk melakukan update/edit data anda tinggal memanggil data yang akan di update/edit dengan query select lalu menampilkannya di form, lalu simpan kembali data tersebut menggunakan query update.

    Untuk update/edit dibuat halaman tersendiri misalnya cari.php dan kode programnya kurang lebih seperti ini:

    <form method='post' action='cari.php'>
      Cari nama :<input type='text' name='dcari' /> <input type='submit' value='Search' name='tcari' />
    </form>
    
    if ($_POST[tcari]=='Search')
    {
      $data=mysql_query("select id,nama,sandi from t_anggota where nama='$_POST[dcari]' ");
      list($id,$nama_lama,$sandi_lama)=mysql_fetch_array($data);
      
      if ($nama!='' and $sandi!='')
      {
        <form method='post' action='cari.php' />
          Pengguna : <input name='user_baru' type='text' value='$_POST[nama_lama]' />
          Sandi : <input name='sandi_baru' type='text' value='$_POST[sandi_lama]' />
          <input name='id_user' type='hidden' value='$_POST[id]' />
          <input name='tupdate' type='submit' value='Update' />
        </form>
      }
      else
      {
        echo "data tidak ditemukan";
      }
    }
    else if ($_POST[tupdate]=='Update')
    {
      mysql_query("update t_anggota set nama = '$_POST[nama_baru]', sandi = '$_POST[sandi_baru]' where id = '$_POST[id_user]' ");
    }
    

    Penjelasan:
    Data yang dicari melalui from pertama (form pencarian), kemudian data tersebut dicocokkan kedalam tabel t_anggota dan jika ditemukan data (id,nama dan sandi) tersebut ditampilkan kedalam form yang kedua untuk di edit. Perhatikan terdapat komponen input yang bertipe ‘hidden’, ini digunakan untuk kunci id data yang akan di ubah.

    Data akan disimpan menggunakan query update artinya data lama akan ditimpa dengan yang baru dan sebagai kuncinya adalah id_user.

  15. Danu Says:

    Mas,

    format password saya terlanjur dengan ekkripsi mysql password, bagaimana cara membuat otentikasinya ya?

    saya coba dengan fungsi

    password(‘password_asli’);

    tidak bisa , katanya “password function() is not declared”

    bagaimana mas?

    • alifaiq Says:

      Ada beberapa cara fungsi enkripsi data yang dapat dipakai, diantaranya: password(), md5(), encrypt(), sha1(), dll.

      Membuat otentikasi password (misalnya untuk form login) adalah dengan membandingkan data hasil enkripsi katasandi dari form login dengan data katasandi yang telah ada di tabel. Jika kedua data enkripsinya sama maka otentikasi berhasil jika tidak maka sebaliknya.

      Sebagai contoh: username “Devi” dengan password “ayambetutu”.

      $p = mysql_query (“select password(‘ayambetutu’)”);
      list($p1) = mysql_fetch_row($p);

      lalu pada tabel, cari password dengan username “Devi”.

      $a = mysql_query (“select nama,sandi from t_anggota where nama=’Devi’ limit 0,1”);
      list($a1,$a2) = mysql_fetch_row($a);

      variabel $p1 dan $a2 yang berisi data terenkripsi tadi kemudian dibandingkan:

      if ($p1==$a2)
      { echo “password sama, login berhasil”; }
      else { echo “password tidak sama, login gagal” }

  16. Danu Says:

    Thanks mas, sudah berhasil.

    Pakai query mysql dulu baru dibandingkan dengan skrip php .

    Tapi selectnya tidak cuma passwordnya tapi juga ditambahi username. Kalau hanya password nanti bisa bingung programnya kalau ada user yang mempunyai password yang sama.

  17. miko Says:

    mas sya mau tanya..klo cara membuat halaman member only seperti di http://www.gilt.com gmna y caranya..tq

    • alifaiq Says:

      hampir sama dengan pertanyaan sdr Agus diatas, anda bisa membagi halaman sesuai dengan nama angotanya atau anda menambahkan field untuk kode area (misalnya: admin, member, guest).

  18. uttavia Says:

    mas saya mau tanya kalo bikin login tapi passwordnya pake md5 gimana caranya

    • alifaiq Says:

      Halaman login pada intinya adalah mencocokkan data username dan password yang dimasukkan dengan data username dan password yang ada dalam tabel (database). Kalau data username dan password (bisa keduanya atau salah satu) yang ada pada tabel dienkripsi, maka pada halaman login juga harus diberi fungsi enkripsi yang sama nantinya ketika user melakukan login data yang dicocokkan adalah data enkripsi input dengan data enkripsi yang ada di tabel.

      Gunakan perintah SELECT MD5(‘katasandi’); untuk membuat enkripsi passwordnya.

  19. uttavia Says:

    aku masih belum mengerti mas katasandi itu maksudnya apa?

    • alifaiq Says:

      ‘katasandi’ yang dimaksud adalah isi password yang akan dienkripsi.

      Misalnya: username ‘budi’ dan password ‘nasilemak’, password dienkripsi dengan MD5, melalui MySQL command sebagai berikut:

      >SELECT MD5(nasilemak)
      >5abce368a085ec6870d99d8575adda99

      >INSERT INTO t_anggota (nama,sandi) VALUES(‘budi’,’5abce368a085ec6870d99d8575adda99′);

  20. ade Says:

    Assalamualaikum,
    Mas tanya donk aku lg buat skripsi nich dan aku coba gabung ke db yg aku bikin knp ga muncul bisa ya…
    maksud dari = header(“location:../”);
    kususnya ../ =apa

    makasih sebelumnya

    • alifaiq Says:

      pastikan pesan erornya di bagian mana, sedangkan header(“location:../”); untuk mengalihkan halaman ke direktori utama (yang dimaksud adalah halaman index.php) atau bisa juga di ganti dengan header(“location:index.php”);

  21. Barayuda Says:

    ternyata ada banyak cara untuk membuat login..
    makasi kka ^_^

  22. Rizal Says:

    Kenapa ya mas ada kalimat kya gini : Deprecated: Function session_is_registered() is deprecated

  23. Rizal Says:

    mas knpha ya saya salah di sininya ..

    suka muncul kalimat

    Notice: Undefined index: username in /opt/lampp/htdocs/web/home.php on line 3

  24. Rizal Says:

    Notice: Undefined index: user in /opt/lampp/htdocs/web/menu.php on line 3

  25. Zhall Says:

    Function session_is_registered() is deprecated

  26. alifaiq Says:

    Untuk mas Rizal:
    kelihatannya eror yang muncul apabila menggunakan PHP versi 5 keatas😀.

    Berikut perbaikan kode program:
    sambung.php

    <?php 
    $link=mysql_connect('localhost','root','');
    if (!$link)
    { 
      die ('konesi mysql tidak dapat dihubungkan:' . mysql_error());   
    }
    
    $db_selected=mysql_select_db('cobadb',$link);
    if (!$db_selected)
    {
      die('database tidak bisa dipakai : ' . mysql_error());
    }
    ?> 
    

    login.php

    <?php
    include "sambung.php";  
    
    if (($_POST['user']<>"") && ($_POST['password']<>""))  
    {  
      $Q=mysql_query("select * from t_anggota where nama='$_POST[user]'"); 
      $R=mysql_fetch_array($Q);  
    
      if (($R==NULL) OR ($R['sandi']<>$_POST['password']))  
      {  
        header("location:index.php");  
      }  
      else 
      {  
        $user=$R['nama'];
        if (!isset($_SESSION['user'])) 
          $_SESSION['user'] = $user;
        header("location:menu.php");  
      }  
    }  
    else 
    {  
      header("location:index.php");  
    }  
    ?> 
    

    menu.php

    <?php
    session_start();  
    $uname=$_SESSION["user"];  
    include "cek_session.php";  
    ?>
    
    <html>
    <head>
    <title>Halaman Menu</title>
    </head>
    
    <body>  
    Halaman Menu<br>
    <?php echo"User : ".$uname; ?>
    </body>  
    </html>
    

    cek_session.php

    <?  
    if (!isset($_SESSION['user']))
    {  
      session_destroy();  
      header("Location:index.php");  
    }  
    ?> 
    
  27. Naufal Azzam Says:

    mas saya mau tanya ad ga cari yang lebih singkat untuk membuat login setiap user, misal user A login hanya memunculkan data2 dari user itu sendiri, dan seterusnya sampe user A-Z… selain dengan cara membuat file itu sendiri 1-1..

    klo bisa dibilang sama sepeti user facebook..
    tapi yang paling sederhana saja..

    terimakasih.

    • alifaiq Says:

      sangat dimungkinkan mas, tidak perlu membuat file satu-persatu setiap user, kalo formmya sama nanti tinggal panggil data-data user sesuai dengan user loginnya mas.

  28. Natha Darsana Says:

    mas gimana caranya membuat halaman member di wordpress??? mohon pencerahannya

    • alifaiq Says:

      jika menggunakan wordpress ataupun cms yang lain biasanya sudah menyertakan fitur manajemen user, tinggal di add/invite kemudian diatur hak aksesnya (sudah ada pilihannya)


  29. klw login dengan databasenya ada yg berperan sebagai super admin, admin, dan user. dimana=
    -super adminnya itu bisa menghentikkan hak acces dari admin dan user, dia bisa merubah data, memasukkan, dan menghapus data.

    -adminnya bisa menghentikkan hak acces dari user dan bisa merubah data, memasukkan, dan menghapus data.

    -usenya dapat melihat data dalam web tersebut tetapi hanya bisa memasukkan data, bisa merubah dan menghapus data yang ia masukkan sendiri dan tidak bisa mengubah data atau menghapus data orang lain

    mohon bantuannya untuk kode phpnya. terima kasih banyak sebelumnya.


  30. klw halaman login dengan databasenya/sistemnya ada yg berperan sebagai super admin, admin, dan user. dimana=
    -super adminnya itu bisa menghentikkan hak acces dari admin dan user, dia bisa merubah data, memasukkan, dan menghapus data.

    -adminnya bisa menghentikkan hak acces dari user dan bisa merubah data, memasukkan, dan menghapus data.

    -usenya dapat melihat data dalam web tersebut tetapi hanya bisa memasukkan data, bisa merubah dan menghapus data yang ia masukkan sendiri dan tidak bisa mengubah data atau menghapus data orang lain

    mohon bantuannya untuk kode phpnya. terima kasih banyak sebelumnya.

    • alifaiq Says:

      wah..😀, logika algoritmanya seperti pohon (tree), pada posisi atas terdapat super admin, lalu dibawahnya ada admin, dan dibawah admin terdapat user.
      klu-nya sbb:
      1. pada tabel anggota perlu ditambahkan atribut hak akses, misalnya kode “1” untuk super admin, kode “2” untuk admin, dan kode “3” untuk user
      2. ditambahkan pula pada tabel anggota suatu attribut status gunanya untuk status blok (disable/enable) user
      3. ditambahkan aturan hak akses sebelum proses modifikasi data (seperti : tambah, ubah/edit, hapus data) dijalankan, seperti yang anda paparkan diatas
      4. pada halaman login ditambahkan filter untuk blok (disable/enable) user

  31. indra permana Says:

    gan kenapa saya mah waktu login tuh bisa balik lagi ke halaman form loginnya lagi gan?

    • alifaiq Says:

      pertama, cek kode program dan databasenya apakah sudah benar, yang kedua cek konfigurasi session (set on) di php.ini

  32. Fredy Tanaya Says:

    gan yang di file index.php waktu ane jalankan kok keluar error :
    Parse error: syntax error, unexpected ‘<' in E:\xampp\htdocs\TA\index.php on line 2
    brarti yg error di , ngomong2 yg bikin error apa tuh gan… ?
    trus uda ane cobak semua yg agan posting di atas, n ane juga uda nyobak perbaikan kode dari agan ke saudara Zhall, semua tetep kluar error kayak gitu gan…

    mohon bantuan nya buat agan, terima kasih…🙂

  33. raga Says:

    Parse error: syntax error, unexpected ‘<' in C:\AppServ\www\index.php on line 2

    udah coba di <?php sama aja gan.,.

    • alifaiq Says:

      untuk file index.php coba yang ini, (karena didalam tag php maka ditambahi echo) :

      <?php
      echo"
      <form method='post' action='login.php'>
      <label>Pengguna : <input name='user' type='text'></label>
      <label>Sandi : <input name='password' type='password'></label>
      <input name='Submit' type='submit' value='Login'>
      </form>
      ";
      ?>
      
  34. rahman Says:

    maaf kK saya mau tanya..gimna caranya supaya login admin keamanannya diperkuat intinya ga bisa di bobol…oleh user jahat atau seorang hacker…

    • alifaiq Says:

      ada beberapa langkah pengamanan halaman login, diantaranya adalah menggunakan enkripsi data, menambahkan input kode captcha dan filter karakter yang diinput. hal yang lain bisa juga menggunakan https.

  35. rahman Says:

    caranyaa gmna kaka…
    boleh mnta scriptnya ngga…saya bngung …….

    • alifaiq Says:

      maaf belum sempat bikin lagi, silahkan dibuat sederhana (seperti diatas) dulu lalu kemudian ditambah fitur security-nya

  36. rahman Says:

    ok deh..o y kaka script yng di atas keamanannya cukup kuat ngga… trs kalaw mau buka login >admin itu pindah new tabs baru lg ngga..apa tetap di halaman user…?

  37. shafadimas Says:

    kak gimana cara daftar id passwordnya -_-


  38. Dari logika diatas kan (Pertanyaannya Agus) ada fungsi if, then dan ellse. Nah, bagaimana, kalau penyesuaiannya dengan user yang baru mendaftar dan otomatis dibuatkan halaman untuknya ?

    Terima Kasih

    • alifaiq Says:

      Sederhananya seperti yang saya jelaskan diatas (jawaban pertanyaan sdr agus), namun untuk lebih dinamis anda bisa mebuat manajemen user dan menu,

      Misalnya
      User A; memiliki menu: menu 1 (index1.php), menu 2 (index2.php), menu 3 (index3.php)
      User B: memiliki menu: menu 4 (index1.php), menu 5 (index5.php), menu 6 (index6.php)
      User C: memiliki menu: menu 1 (index1.php), menu 3 (index3.php)

      Nah, pembuatannya dalam database bisa dibuat seperti ini: Tabel User, Tabel Menu, dan Tabel Relasi_User_Menu

      bisa dipahami?


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s