Выгрузка данных с другой БД
Здравствуйте, помогите в помощи, не знаю с чего начать.
Нужно сделать выгрузку проектов с другой базы данных, сама БД делает выгрузку со сторонего сервера. И после выгрузки нужно вывести на сайте, данные автоматически обновляются в базе, нужно чтоб автоматически производилась постоянное обновление ресурсов и его вывод. Все будет работать с недвижимостью… в этом новичок и первый раз буду осуществлять такую работу плагина.
Нужно сделать выгрузку проектов с другой базы данных, сама БД делает выгрузку со сторонего сервера. И после выгрузки нужно вывести на сайте, данные автоматически обновляются в базе, нужно чтоб автоматически производилась постоянное обновление ресурсов и его вывод. Все будет работать с недвижимостью… в этом новичок и первый раз буду осуществлять такую работу плагина.
Комментарии: 2
Пример выгрузки заказов с другой БД, думаю адаптировать под создание и обновление ресурсов не будет проблемой
$user = 'user';
$pass = 'password';
$host = '127.0.0.1';
$dbname = 'dbname';
$conn = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $user, $pass,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
));
$mainSQL = "SELECT * FROM `orders` ";
$sth = $conn->prepare($mainSQL);
$sth->setFetchMode(PDO::FETCH_ASSOC);
$sth->execute();
$retRows = $sth->fetchAll();
foreach ($retRows as $item){
$uid = 0;
if($us = $modx->getObject('modUserProfile', array('email' => $item['customers_email_address']))){
$uid = $us->get('internalKey');
} else {
$user = $modx->newObject('modUser');
$user->set('username', $item['customers_email_address']);
$user->set('password', '');
$user->save();
$profile = $modx->newObject('modUserProfile');
$profile->set('fullname', $item['customers_name']);
$profile->set('email', $item['customers_email_address']);
$profile->set('phone', $item['customers_telephone']);
$user->addOne($profile);
$profile->save();
$user->save();
$uid = $user->get('id');
}
$adr = $modx->newObject('msOrderAddress');
$arr = [
'user_id'=>$uid,
'receiver'=>$item['customers_name'],
'createdon'=>$item['date_purchased'],
'updatedon'=>$item['last_modified'],
'phone'=>$item['customers_telephone'],
'country'=>$item['customers_country'],
'index'=>$item['customers_postcode'],
'region'=>$item['customers_state'],
'city'=>$item['customers_city'],
'street'=>$item['customers_street_address'],
'metro'=>$item['customers_company'],
];
$pa = $item['payment_method'];
$adr->fromArray($arr);
$adr->save();
$order = $modx->newObject('msOrder');
$arr = [
'user_id'=>$uid,
'createdon'=>$item['date_purchased'],
'updatedon'=>$item['last_modified'],
'num'=>$item['orders_id'],
'status'=>$item['orders_status'],
'payment'=>$item['payment'],
'delivery'=>1,
'address'=>$adr->get('id'),
'cost'=>$item['cost'],
'cart_cost'=>$item['cost'],
'delivery_cost'=>0,
'weight'=>0,
];
$order->fromArray($arr);
$order->save();
}
Спасибо большое)Очень признателен)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.