Перейти к содержимому


Фотография
- - - - -

Как получить значения полей radio и select при оформлении заказа


Лучший Ответ SmetDenis , 21 December 2015 - 10:16

Похоже что есть ошибка в условии

 

          } else if ($field->get('option') !== null) {
            $value = $field->get('option');  // вернет массив из ключа "option"
          }
Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 2

#1 aash

aash

Отправлено 16 December 2015 - 13:28

Формируем запрос из хука к своей базе данных при оформлении заказа.
Так выбираем все поля заказа:
        $items = (array)$this->getOrder()->getItems(true);
        if (empty($items)) {
            return;
        }
 
        $order=$this->getOrder();
        $fields = $order->getFields();
        $result = array();
        foreach($fields as $elemId => $field) {
          $element = $order->getElement($elemId);
          $value = $field;
          if ($field->get('value') !== null) {
            $value = $field->get('value');
          } else if ($field->get('option') !== null) {
            $value = $field->get('value');
          }
          $result[$elemId]= $value;
        }
Не приходят данные по полям типа select и radio. Как получить какое выбрано значение в этих полях?
В переменной $result получаем следующие данные:
 
Array ( 
    [253cfb56-77e2-4b38-8d04-f82275274208] => Антон
    [d31df793-de55-4710-b100-f3921f146b22] => 89634588521
    [092520f7-2ccb-4994-ad0d-6ee262071cbb] => Ленина
    [967784c3-bec4-4d83-995d-b4ef9f894db8] => 8
    [8c10020f-c629-4b04-b11e-11a02f56f05c] => 
    [8ec91fbe-f9ed-4f9b-a11b-535b034ca767] => 12
    [b86682b5-e933-40e7-803d-7b037db19eb0] => 6
    [153329f0-dfe3-4fee-8273-9ed8f84663b7] => 1
    [50e5b4b2-f30c-4e71-8233-fd290d292081] => тест
    [bf32d8fc-f49a-415d-b2f3-0c77f07c74c3] => 2015-12-24 06:00:00
    [3e2c3d90-c19d-465a-819a-e2fd1ea3f758] => 
)
 
для поля radio ([3e2c3d90-c19d-465a-819a-e2fd1ea3f758]) пусто

Сообщение отредактировал SmetDenis: 21 December 2015 - 10:04
code!

  • 0

#2 SmetDenis

SmetDenis

Отправлено 21 December 2015 - 10:16   Лучший Ответ

Похоже что есть ошибка в условии

 

          } else if ($field->get('option') !== null) {
            $value = $field->get('option');  // вернет массив из ключа "option"
          }

  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 aash

aash

Отправлено 21 December 2015 - 10:45

Огромное спасибо!


  • 0




Click to return to top of page in style!