Merhabalar arkadaşlar benim’de bir ara çok aradığım bir multi connection bağlantısını sizinle paylaşmak istedim..
Laravel Çoklu Mysql bağlantısı
[php]
‘mysql’ => array(
‘driver’ => ‘mysql’,
‘host’ => ‘localhost’,
‘database’ => ‘uygulama’,
‘username’ => ‘root’,
‘password’ => ”,
‘charset’ => ‘utf8’,
‘collation’ => ‘utf8_general_ci’,
‘prefix’ => ”,
),
//bu kısım remoteMysql
‘remote’ => array(
‘driver’ => ‘mysql’,
‘host’ => ‘x.x.x.x’,
‘database’ => ‘db’,
‘username’ => ‘user’,
‘password’ => ‘password’,
‘charset’ => ‘utf8’,
‘collation’ => ‘utf8_general_ci’,
‘prefix’ => ”,
),
[/php]
[php]
##title##
$title = "Remote Ürünler Entegrasyonu";
##sunucudaki ürünler##
$remoteUrun = new remoteUrunler; // model Sınıfım
$urunler = $remoteUrun ->select(‘tedarikciCode’,’name’,’resim’,’stok’)->get();
//echo "<pre>";
//print_r($urunler);
//exit;
//return View::make(‘entegre.remoteUrun’,array(‘urun’=>$urunler))
// ->with(‘title’,$title);
/*
* Yapılacak işlem listesi
* 1. ürünler listesine bağlan listeyi çek
* 2. Local database bağlan ve remoete ile karşılaştırma işlemlerine başla
* 3. Olanların güncellemesini yapalım & olmayanları ekleyelim
* 4. Güncelleme insert işlemleri sırasında resimlerin thumb oluşturup atalım!
*/
//$outPage = "";
$say = 0;
foreach ($urunler as $urun) {
$say++;
# code…
//$outPage .= $urun->name;
$localUrun = DB::connection(‘mysql’)->select("SELECT * FROM urun WHERE CODE = ?",array($urun->tedarikciCode));
if(count($localUrun)>0)
{
//bu kısımda eğer ürün varsa update et
//echo "Ürün Var".$urun->tedarikciCode;
//$kucukResim = Image::make($resim->getRealPath())->resize(’50’,’50’)->save("urunler/kucuk/".$newName); // kucuk
//$buyukResim = Image::make($resim->getRealPath())->resize(‘400′,’400’)->save("urunler/buyuk/".$newName); // kucuk
DB::update(‘UPDATE urun SET NAME = ?, stok = ? WHERE CODE = ?’, array($urun->name, $urun->stok,$urun->tedarikciCode));
}
else
{
//yoksa insert et işlemleri olacak;
//echo "Ürün Yok";
$kucukResim = Image::make("http://remote.com.tr/images/urunler/".$urun->resim)->resize(’50’,’50’)->save("urunler/kucuk/".$urun->resim); // kucuk
$buyukResim = Image::make("http://remote.com.tr/images/urunler/".$urun->resim)->resize(‘400′,’400’)->save("urunler/buyuk/".$urun->resim); // kucuk
DB::insert(‘insert into urun (CODE, NAME,resim,stok) values (?, ?, ?, ?)’, array($urun->tedarikciCode, $urun->name, $urun->resim, $urun->stok));
}
}
echo "işlem tamamlandı";
return Redirect::to(‘/’);
[/php]
Basit şekilde yapılmıştır fikri olan veya farklı bir tavsiyesi olan varsa paylaşırsa sevinirim.