Bu kodu vardır:
<?php
foreach($items as $item) {
$site = $item['link'];
$id = $item['id'];
$newdata = $item['data_a'];
$newdata2 = $item['data_b'];
$ch = curl_init($site.'updateme.php?id='.$id.'&data1='.$newdata.'&data2='.$newdata2);
curl_exec ($ch);
// do some checking here
curl_close ($ch);
}
?>
Örnek giriş:
$site = 'http://www.mysite.com/folder1/folder2/';
$id = 512522;
$newdata = 'Short string here';
$newdata = 'Another short string here with numbers';
Burada updateme.php ana işlem
if (!$id = intval(Tools::getValue('id')))
$this->_errors[] = Tools::displayError('Invalid ID!');
else
{
$history = new History();
$history->id = $id;
$history->changeState($newdata1, intval($id));
$history->id_employee = intval($employee->id_employee);
$carrier = new Carrier(intval($info->id_carrier), intval($info->id_lang));
$templateVars = array('{delivery}' => ($history->id_data_state == _READY_TO_SEND AND $info->shipping_number) ? str_replace('@', $info->shipping_number, $carrier->url) : '');
if (!$history->addWithemail(true, $templateVars))
$this->_errors[] = Tools::displayError('an error occurred while changing status or was unable to send e-mail to the employee');
}
Site her zaman değişen ve foreach döngüsü en az 20 kez çalıştırmak ya da daha fazla veri sayısına bağlı olacak şekilde her $ ürün içindeki en az 20 veri olacak.
Muhtemelen çok biraz zaman alabilir bu yüzden DB kaydedilir önce hedef site geçirilen değişkenler ile veritabanı bulunuyor güncelleyecek, bu muhtemelen en az 5 işlevleri ile geçecek.
Benim sorum bu yaklaşım ile bir sorun olacak mı? Komut kıvırmak süreç boyunca giderken bir zaman aşımı hatası karşılaşacak? Nasıl $ ürün veri şimdi yaklaşık 50 ya da yüzlerce olur?
Veya bunu yapmak için daha iyi bir yolu var mı?
UPDATES: * Added updateme.php main process code. Additional info: updateme.php will also send an email depending on the variables passed.
- Şu anda diğer sitenin tüm aynı sunucuda barındırılan.