Save Record Data Dari Single Form Ke Dua Database Berbeda

Salam buat para master Yii,

Langsung aja mau tanya, bisa ga nge-save record data dari single form ke dua database berbeda di Yii?

Kondisi :

  • Aplikasi Yii sudah berjalan dengan baik pada satu database (db1)

  • (CRUD) utk form registrasi sudah terkoneksi dengan baik pada tabel member di db1

Pertanyaan :

[list=1][*]Ada database baru (db2) dengan table userinfo di dalamnya, bagaimana caranya saat mengisi form registrasi data-data record masuk ke tabel member di db1 dan tabel userinfo pada db2?

[*]Mohon kasitau langkah-langkahnya?[/list]

Terima kasih.

  1. Mungkin agan perlu tambahkan koneksi untuk db2 dulu di file konfigurasi (protected/config/main.php)



'db2'=>array(

   'class'=>'CDbConnection',

   'connectionString' => 'mysql:host=localhost;dbname=db2',

   'emulatePrepare' => true,

   'username' => 'root',

   'password' => '',

   'charset' => 'utf8',

),



  1. Jika agan mau generate model untuk tabel di database db2 lewat Gii, maka koneksi database untuk db1 perlu dimatikan terlebih dahulu.



/*'db'=>array(

   'connectionString' => 'mysql:host=localhost;dbname=db1',

   'emulatePrepare' => true,

   'username' => 'root',

   'password' => '',

   'charset' => 'utf8',

),*/

'db'=>array(

   'class'=>'system.db.CDbConnection',

   'connectionString' => 'mysql:host=localhost;dbname=db2',

   'emulatePrepare' => true,

   'username' => 'root',

   'password' => '',

   'charset' => 'utf8',

),



  1. Set koneksi untuk model tabel userinfo



class UserInfo extends CActiveRecord

{

   // ...

   public function getDbConnection()

   {

        return Yii::app()->db2;

   }

}



Setelah itu agan bisa pakai model UserInfo seperti biasa. Kalau tidak, ya silakan posting di sini lagi. ;)