Mysql
 sql >> база данни >  >> RDS >> Mysql

magento таблица sales_flat_order поле protect_code обяснение

Къде се генерира?

Ако погледнете в app/code/core/Mage/Sales/Model/Order.php около линия 2052 , ще намерите следното:

$this->setData('protect_code', substr(md5(uniqid(mt_rand(), true) . ':' . microtime(true)), 5, 6));

Това е мястото, където protect_code се генерира за поръчката (използвайки комбинация от md5, uniqid и произволно цяло число.

За какво се използва?

Ако погледнете в app/code/core/Mage/Sales/Helper/Guest.php и намерете loadValidOrder функция. Ще видите protect_code използва се в някои области, за да се гарантира, че поръчката, която се зарежда, е правилната за стойността на бисквитката на госта.

Използва се и в други области, като сравнения на информация за проследяване. Можете да видите няколко екземпляра на getProtectCode() метод, който се извиква в моделите за изпращане, за да се сравни поръчката с информацията за проследяване. Пример за функция, която го използва е:

public function getTrackingInfoByTrackId()
{
    $track = Mage::getModel('sales/order_shipment_track')->load($this->getTrackId());
    if ($track->getId() && $this->getProtectCode() == $track->getProtectCode()) {
        $this->_trackingInfo = array(array($track->getNumberDetail()));
    }
    return $this->_trackingInfo;
}

Както можете да видите с $this->getProtectCode() == $track->getProtectCode() , проследяващият protect_code трябва да съвпада с protect_code на пратката .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Наистина ли сортирането в InnoDB е толкова бавно?

  2. Как да програмирам MySQL тригер за вмъкване на ред в друга таблица?

  3. Използване на MySQL релационни бази данни на Gentoo

  4. Бягство на MySQL заместващи карти

  5. XmlHTTPRequest:Грешка при анализа на XML:няма намерен елемент