Home > web > Cara menutup halaman form login dabr

Cara menutup halaman form login dabr

March 12th, 2010

Tulisan ini terkait dengan artikel sebelumnya serta jawaban untuk pertanyaan ini. Setelah melakukan instalasi dabr dan melakukan konfigurasi, saya melakukan sedikit perubahan pada kode dabr sehingga halaman form login tidak lagi tampil. Pengguna yang belum login akan langsung diarahkan ke halaman twitter dan dipaksa untuk melakukan authentikasi menggunakan oAuth.

Berikut ini adalah cuplikan kode asli dabr yang terdapat pada file common/user.php

function user_ensure_authenticated() {
  if (!user_is_authenticated()) {
    $content = theme('login');
    $content .= file_get_contents('about.html');
    theme('page', 'Login', $content);
  }
}

Berikut ini adalah perubahan yang saya lakukan pada fungsi diatas, sehingga pengunjung situs akan diarahkan otomatis ke halaman authentikasi twitter menggunakan oAuth.

function user_ensure_authenticated() {
  if (!user_is_authenticated()) {
    header('Location: '. BASE_URL.'oauth');
    exit();
  }
}

Silahkan dicoba, semoga bermanfaat ๐Ÿ™‚

Tambahan:

Authentikasi melalui oAuth penting untuk menjaga keamanan username dan password twitter Anda, karena Anda memberikannya hanya kepada twitter.com, bukan kepada situs aplikasi client twitter. Hal ini sangat penting untuk menjaga jangan sampai username dan password Anda jatuh ke tangan pihak yang tidak berhak lalu melakukan hal-hal yang tidak diinginkan. Terbukti beberapa account twitter teman saya telah diakses pihak lain dan digunakan untuk menyebarkan pesan dan link spam kepada followernya lewat DM. Jangan sampai terulang lagi.

Saya pribadi tidak jadi menggunakan beberapa layanan seperti twitpic hanya karena mereka belum menyediakan autentikasi twitter melalui oAuth. Saya lebih memilih menggunakan img.ly yang sudah mendukung oAuth.

Categories: web Tags: , , ,
  1. March 19th, 2010 at 13:51 | #1

    saya ikut komen disini menggunakan akun DISQUS aja deh mas… biar ama sekalian… ๐Ÿ˜‰

  2. April 7th, 2010 at 06:03 | #2

    masih error mas tetep aja nih pesannya
    Error: Login credentials incorrect.

    ada ym gak mas buat ngobrol2 gitu ๐Ÿ™‚

  3. donnykurnia
    April 7th, 2010 at 11:44 | #3

    YM: donnykurnia
    URL-nya apa, biar saya cobain akses?

  4. wistu
    April 8th, 2010 at 18:37 | #4

    Saya telah menginstall dabr, dan memasukkan konfig sesuai parameter…
    Tetapi kok update stat saya masih “from dabr” ya?

    Bagian mana yang harus diubah lagi?

  5. donnykurnia
    April 8th, 2010 at 19:04 | #5

    Itu karena login menggunakan username dan password. Coba login ke twitter melalui link oAuth-nya, baru didapatkan update stat sesuai nama aplikasi twitter yang dipasang consumer key-nya ke dabr.

  6. April 14th, 2010 at 02:38 | #6

    mas, saya juga masih login credentials incorrect, padahal consumer key sama secretnya udah sama…
    saya coba di server online, malah dabr gave up waiting on twitter…

    tolong pencerahannya mas…

  7. donnykurnia
    April 14th, 2010 at 05:08 | #7

    Sudah dicek beberapa hal ini:
    1. Di twitter, tipe aplikasi adalah browser.
    2. Sesuaikan callback url dengan url tempat dabr diinstall dan arahkan ke halaman oauth (contoh: http://twitter.abifathir.com/oauth)
    3. Di config,php, masukkan consumer key dan consumer secret di bagian ini:
    define('OAUTH_CONSUMER_KEY', '[key dari twitter]');
    4. Sebelum menaruh patch di artikel ini, pastikan dabr berjalan dengan lancar menggunakan oAuth, bukan form login.

    Setelah jalan lancar, baru patch di artikel ini dipasang. Kalau pesan kesalahannya adalah “dabr gave up waiting on twitter…”, ini karena server twitter sedang sibuk. Coba aja beberapa saat kemudian.

  8. April 14th, 2010 at 15:18 | #8

    kalo masalah itu sudah diketahui rootnya apa, ternyata hostingannya ga boleh external link, sekarang pindah tempat hosting malah internal server error…

  9. donnykurnia
    April 15th, 2010 at 04:29 | #9

    Penyebab Internal Server Error yg saya alami selama ini ada 2 kemungkinan:
    1. Kesalahan pada konfigurasi .htaccess
    2. script php menggunakan terlalu banyak resource server (cpu / ram) sehingga di-kill otomatis oleh server sebelum prosesnya selesai.

    Untuk penyebab nomer 2, biasanya ada di hosting shared. Coba hubungi pihak hosting, mungkin mereka sedang maintenance, atau ada sebab lainnya.

  10. July 15th, 2010 at 08:43 | #10

    sekarang udah bisa mas tapi pke dabr yng lama, kalo pake yang rev 323 internal server error kenapa ya??

  11. trmnsygn
    July 16th, 2010 at 17:57 | #11

    saya sudah baca dari artikel sebelumnya sampai ini.
    kayanya memang masih belum bisa di install di hostingan gratis.
    mesti nabung nih buat bikin domain sendiri :).
    Makasi ya Ka atas info & tutorialnya.
    Sukses selalu

  12. Fahri
    July 23rd, 2010 at 05:54 | #12

    saya punya akun twitter,tapi saya mw tutup akun saya,caranya gimana yach?

  13. Fahri
    July 23rd, 2010 at 05:56 | #13

    tolong ajarin tutup twitter dong,saya gaptek soal begituan,saya mau hapus twit saya..

  14. donnykurnia
    July 23rd, 2010 at 09:28 | #14

    wah, jadi konsultasi twitter gini ya. Silahkan kamu login di twitter.com, lalu masuk ke halaman Settings. Di halaman ini, bagian paling bawah ada link 'Deactivate my account.'. Klik saja link itu.

  15. July 28th, 2010 at 00:54 | #15

    kk, aku sekarang udah bisa nih, tapi aku pake build yang baru error incredentials nya muncul lagi, tapi begitu di klik logout langsung bisa konek ke twitter.. aneh ya??

  16. Dimas Novemby
    August 3rd, 2010 at 14:03 | #16

    mas, biar yang home nya itu jadi trend's page gimana cara callbacknya. aku nyoba2 gagal mulu ๐Ÿ™

  17. donnykurnia
    August 3rd, 2010 at 21:28 | #17

    Maksudnya jadi trend page itu gimana ya? Ada contohnya?

  18. Kopiess
    August 16th, 2010 at 15:19 | #18

    mau tanya mas,, form login uda bisa keluar,, tapi pas klik login keluar ini

    Fatal error: Call to undefined function mcrypt_module_open() in /www/110mb.com/v/i/r/t/u/a/l/a/xxxxxxxxxx/htdocs/common/user.php on line 158

    mohon bimbingannya..

  19. August 17th, 2010 at 04:45 | #19

    mas kok setelah dirubah malah jadi error yah php-nya?? Mohon pencerahan dong mas…

  20. donnykurnia
    August 17th, 2010 at 05:48 | #20

    Pesan error itu artinya PHP yg ada di hosting yg kamu gunakan tidak memiliki modul mcrypt. Login lgsg di dabr sudah tidak disarankan, lebih baik dan lebih aman menggunakan oAuth. Silahkan test di aplikasi bukan blackberry, loginnya bukan di dabr tapi di server twitter, jadi username dan password aman, tidak akan diketahui oleh pihak selain twitter.com

  21. donnykurnia
    August 17th, 2010 at 05:49 | #21

    Yang diubah apanya, errornya apa. Saya bukan dukun yang bisa menerawang dari jarak jauh ๐Ÿ™‚

  22. August 17th, 2010 at 06:45 | #22

    Ini mas yang dirubah:

    function user_ensure_authenticated() {
    if (!user_is_authenticated()) {
    $content = theme('login');
    $content .= file_get_contents('about.html');
    theme('page', 'Login', $content);
    }
    }

    Dirubah menjadi:

    function user_ensure_authenticated() {
    if (!user_is_authenticated()) {
    header('Location: '. BASE_URL.'oauth');
    exit();
    }
    }

    Tapi kok malah jadi error yah?

  23. donnykurnia
    August 17th, 2010 at 07:14 | #23

    Errornya apa?

  24. August 22nd, 2010 at 10:18 | #24

    Hhahaa…akhirnya dapet juga ni tutor, hihi..
    Bagus nih, jadi hanya ada pilihan login via Twitter OAuth ๐Ÿ™‚
    Thanks ๐Ÿ™‚

  25. August 22nd, 2010 at 18:37 | #25

    mas, saya udah upload dabr nya di hostingan, terus setiap login pake oAuth kok gagal ya? keluarnya begini:

    Twitter timed out
    Dabr gave up on waiting for Twitter to respond. They're probably overloaded right now, try again in a minute.

    gimana cara fix nya??

  26. donnykurnia
    August 23rd, 2010 at 00:21 | #26

    Sudah banyak yg mengalaminya dan saya sudah menjawab berbagai comment ttg itu, silahkan dilihat di halaman ini.

  27. August 23rd, 2010 at 03:34 | #27

    kalo itu karena servernya yg sibuk, perasaan oAuth app dabr yg lain bisa mas?
    (saya coba ngubertwitter oAuthnya bisa)
    ada kesalahan dimana ya?

  28. donnykurnia
    August 23rd, 2010 at 04:01 | #28

    Ya kemungkinan kedua, hostingmu ga bisa 'ngobrol' dengan server twitter.

  29. August 26th, 2010 at 02:45 | #29

    saya juga ngalaminnya,klo twitternya sibuk masa sih client yg laen saya coba ga knp2,saya pakai p4o.net sbg server web hostingnya. apa krn gratisan kali ya situsnya?kira2 apakah ada server hosting laen gratisan yg bisa?

  30. August 26th, 2010 at 02:46 | #30

    ini pakai web hosting gratisan ato berbayar?

  31. September 5th, 2010 at 17:05 | #31

    coba deh mas. saya sudah upload ke http://teguh-twit.co.cc Tulisan’e malah begini

    Twitter timed out
    Dabr gave up on waiting for Twitter to respond. They’re probably overloaded right now, try again in a minute.

    tuh knapa si..???

  32. September 17th, 2010 at 05:33 | #32

    kalo opensource dabr skrg apa udah bisa dengan karakter panjang sama twitpicnya blom ya??

    • Anonymous
      September 17th, 2010 at 07:53 | #33

      Ga tahu juga, langsung aja lihat versi baru dabr di situsnya.

  33. Jun
    October 1st, 2010 at 13:48 | #34

    Sering banget masalah Login credentials incorrect ini muncul.. 5 menit error, 5 menitnya kemudian bisa lagi tanpa memperbaiki apapun.. aneh..

    Btw lam kenal Mas.

  34. April 12th, 2011 at 02:19 | #35

    twipic sekarang kayaknya sudah menyediakan autentikasi twitter melalui oAuth mas. thx

Comments are closed.