Book Review: Learning Devise for Rails

Now I want to review a book about Rails. The Book's Title is "Learning Devise for Rails".  One of the authors is my FriendHafiz Badrie Lubis. This is cool, he write his first book in PACKT PUB.

Let's we start the review. First time I want to tell You about Devise. Devise is a flexible authentication solution for Rails based on Warden. It is amazing, we can create authentication module very fast.

We can learn our application authentication from this book. It can create sign up, sign in, update, and delete user. Devise has build-in function for email confirmation module too.

Do you want to connect your web with Twitter or Facebook? This book explain how to authenticate to Facebook and Twitter. It is very simple, Devise handle that.

This book doesn't explain basic of Ruby on Rails, so we must learn it from another book or resource. This book is very thin, so that it can be read in a short time.

Data Session yang Hilang di Fuelphp

Halo sahabat phpmahir! gimana kabarnya? Semoga makin mahir PHPnya. Kali ini saya ingin menceritakan kejadian yang baru saja saya alami.

Ceritanya begini, lagi asik-asiknya saya ngoding pake framework FuelPHP, eh ada masalah. Tiba-tiba saja ada beberapa session yang hilang. Saya set session berhasil, di get juga berhasil, tapi begitu refresh kok datanya hilang?

Saya telusuri penyebabnya mulai dari log server sampai ngoprek kodingan tapi tidak mendapatkan hasil yang memuaskan. Setelah saya telusuri ke berbagai website, ternyata eh ternyata.... session aplikasi saya disimpan di cookie browser. Penyimpanan di cookie browser menggunakan enkripsi dan di simpan hanya di satu variabel cookie. Tahu sendiri cookie itu ukuran defaultnya cuma 4KB.

Untuk mengubah penyimpanan cookie, saya melakukan konfigurasi sesuai arahan artikel fuelphp di sini. Saya ubah konfigurasi driver di file fuel/core/config/session.php yang semula cookie menjadi file. Dengan demikian saya dapat melanjutkan program tanpa takut 'kehabisan jatah' lagi.

PHP Mahir, Mahirin skill PHP lo!

Memperbaiki Session PHP yang tidak Berjalan di Linux Centos Ubuntu

Halo sahabat php mahir, ini pengalaman penulis dalam instalasi awal linux centos dan php. Penulis menggunakan Nginx untuk menjalankan aplikasi php. Ada suatu masalah dimana server tidak dapat menyimpan session. Ternyata yang jadi masalah adalah permission, mengatasinya cukup mudah, jalankan saja perintah berikut:

chmod 777 /var/lib/php/session/

Jika gagal, lakukan dengan user root (sudo di ubuntu atau su di centos). Nah, setelah itu langsung saja coba lagi sessionnya. Semoga berhasil!

PHP Mahir, Mahirin skill PHP lo!

Install Java7 Oracle di Ubuntu Tanpa Ribet

Sahabat PHPMahir, kalau kita menggunakan apt-get untuk menginstall java, biasanya yang diinstall adalah openjdk. Jika kita ingin menggunakan jdk dari oracle, langkah mudahnya di terminal sebagai berikut:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer


Demikian, semoga bermanfaat.

PHP Mahir, Mahirin skill PHP lo!

Membuat Tabel Migrasi Yii secara Otomatis

Yiic migrate sangat berguna untuk instalasi database awal dan update struktur database dari program yii kita. Dengan migration tools ini, setiap developer atau user dapat mengupdate databasenya tanpa perlu ngoprek service databasenya.

Untuk membuat migrasi, developer harus membuat koding secara manual untuk penambahan atau pengurangan tabel dan kolom. Jika jumlah tabelnya sedikit atau perubahannya tidak terlalu banyak, koding dapat mudah dibuat, namun akan sangat melelahkan jika developer harus membuat koding migrasi untuk jumlah tabel yang sangat banyak.

Di sini saya akan membagi sebuah perintah konsol dari seorang developer yii. Kode dapat diunduh di  https://github.com/codevarun/Deftmigrations. Setelah Anda mengunduhnya, salin file DeftmigrationsCommand.php ke folder protected/commands. Buat folder protected/migrations jika belum ada. Pastikan yiic, yiic.bat, yiic.php ada di folder protected.


Setelah itu Anda dapat menjalankan migrasi, jika Anda pengguna windows, pastikan environment variable php sudah berjalan ke path yang benar.

Untuk menjalankan pembuatan migrasi, bukan commandline lalu masuk ke folder protected. Jalankan salah satu dari perintah berikut:
yiic.bat deftmigrations TableSchema
yiic.bat deftmigrations TableData
yiic.bat deftmigrations TableDump
Perintah pertama untuk membuat migrasi seluruh struktur tabel tanpa data, perintah kedua untuk migrasi hanya data, perintah ketiga untuk dumping struktur tabel dan data. Ketikkan yes ketika ditanya.

Untuk migrasi hanya tabel tertentu, misal nama migrasi DEFT dan tabel yang akan dibuat migrasinya countries, berikut perintahnya:
yiic.bat deftmigrations TableDump  --name=DEFT --tableName=countries
Demikian artikel migrasi kali ini, semoga bisa membantu teman-teman semua. Jika artikel ini bermanfaat silakan share atau komentar di bawah. Terimakasih :)


PHP Mahir, Mahirin skill PHP lo!


Membuat Virtual Host Apache Untuk Domain Sendiri di Windows 7


Sebelumnya di artikel http://phpmahir.blogspot.com/2013/06/membuat-virtual-host-apache-untuk.html, sudah dijelaskan bikin domain sendiri di laptop sendiri di ubuntu. Sekarang saya sedang menerapkannya di windows 7. Pada kasus ini saya ingin membuat domain http://airlines.com diarahkan langsung ke localhost di folder tertentu.

Langkah pertama adalah pointing domain ke 127.0.0.1 atau localhost. Buka notepad++ dengan klik kanan lalu run as administrator. Tambahkan 127.0.0.1 {namadomain} di baris paling bawah.


Coba buka http://airlines.com di browser, maka akan tampil tampilan root file apache, jika pakai xampp, tampilannya seperti berikut:


Selanjutnya kita arahkan http://airlines.com ke folder yang dikehendaki, saya akan arahkan ke C:\xampp\htdocs\arfik\airlines\taufik-riontona. Langkahnya buka file C:\xampp\apache\conf\extra\httpd-vhosts.conf. Di bagian bawah, tambahkan code sebagai berikut:
gambarnya:

Sekarang kunjungi http://airlines.com, maka file php di folder yang kita maksud akan dieksekusi.

PHP Mahir, Mahirin skill PHP lo!

Instalasi MySQL di Ubuntu

Artikel ini saya tulis karena beberapa kali saya harus setup server baru atau install ubuntu baru. Setiap kali saya hendak menginstall suatu program php, saya harus install php, mysql, apache, memcached, redis, dan sebagainya. Untuk instalasi MySQL, pertama kali update dulu ubuntu kita dengan perintah berikut:

Selanjutnya jalankan perintah berikut:
Biasanya ketika instalasi ada permintaan password untuk root. Jika tidak ada, kita dapat melakukan set password root MySQL dengan perintah berikut:
Selanjutnya mysql harus dihubungkan dengan php, untuk menghubungkan mysql dengan php, install modul berikut:

Sekian instalasi MySQL dari saya, cukup membantu bagi saya sendiri dan semoga bisa membantu para pembaca semua.

PHP Mahir, Mahirin skill PHP lo!

Instalasi CURL untuk PHP di Ubuntu dengan APT-GET

CURL berguna untuk mengambil data tertentu ke server lain. Kadangkala ketika pertama kali install php, modul curl belum terinstall. Untuk menginstall CURL di ubuntu, kita bisa menggunakan apt-get. caranya mudah.

sudo apt-get install php5-curl

Setelah itu restart apache

sudo /etc/init.d/apache2 restart

Sekian... ringkas banget kan?? hehe

PHP Mahir, Mahirin skill PHP lo!

BBM for All : KUDETA INTELEKTUAL

Dengan hadirnya BBM di iOs/Android, maka handset BB yang identik dengan keyboard qwerty akan naik lg pamornya, bandingin aja enak mana untuk urusan ketik di BB/iOs/Android ? Bahkan di z10 pun desain keyboard virtual dan predictive text-nya lebih nyaman dari iOs/Andro.



Untuk urusan privacy, BBM udah lebih dulu mikirin ginian, selama nggak di-accept, nggak akan bisa chatting dengan yang bersangkutan, nggak perlu repot-repot nge-block...



Penggunaan PIN dibanding nomor simcard handphone lebih secure, karena PIN hanya untuk BBM, tidak untuk sms, terhindar dari sms spam kerjaannya sales-sales gila yang maniak spam.



Hadirnya BBM di iOs/Android, bisa membalikkan kembali fungsi smartphone hanya nyaman untuk chatting, bukan untuk browsing, main game, social media dll, kecuali smartphone dengan size screen yang lebih lebar, artinya selain chatting lebih baik pakai Tablet.

Dan hanya BBM lah yang sukses sebagai text messanger, yang sekaligus memiliki device-nya juga. iMessage dan Gtalk, you knowlah ... Maka bisa jadi BBM akan menggigit Apel dan membuat semakin pucat hujau robot....


Dengan OS 10, paket internet BB sudah tidak menggunakan paket BIS lg, dan sudah pasti penggunaan BBM di iOs/Android juga. Namun ini bisa merubah paket data yang ada karena kemungkinan populernya penggunaan BBM di iOs/Android.

Kemudahan memindahkan ekosistem BBM dengan Blackberry ID akan banyak diminati karena didorong kecendrungan pengguna ponsel yang sering gonta ganti simcard (tingkat churn rate yang tinggi).




 (Budi Imam Prayitno)

Instalasi Node.js di Windows 7

Halo sahabat phpmahir! Kali ini saya mau mencoba node js. Node js itu katanya buat bikin aplikasi web secara real time dan responsif, jadi server dan client tetap terhubung, tidak 'jual putus' seperti http. Nantinya kita bisa menggunakan nodejs dikombinasikan dengan php untuk membuat aplikasi real time yang bagus.

Langkah pertama adalah download dulu nodejs di http://nodejs.org/download/. Saya menggunakan windows 7 Professional 64bit, jadi saya download windows installer 64-bit. Jalankan installernya kemudian ikuti instruksi selanjutnya, standar install program di windows lah.



Setelah instalasi, jalankan node.js command prompt. Saya buat sebuah file bernama hello.js, saya simpan di C:/xampp/htdocs/node. Isi filenya sebagai berikut:
Buka node.js command prompt, arahkan ke folder node, lalu jalankan perintah "node hello.js". Akan tampil "hello world".

Sekarang buat file hellosvr.js, isinya sebagai berikut:
Setelah itu jalankan perintah "node hellosvr.js", maka cmd akan menunggu. Jalankan browser, ketik alamat http://127.0.0.1:1337/, maka akan tampil Hello world di browser.
Tampilan node cmd prompt

Tampilan di browser

Demikian artikel awal node.js kali ini, semoga sahabat phpmahir bisa semakin mengerti.