Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Модуль infosmska Undefined offset: 1 gateway.php on line 56


Recommended Posts

Всем привет! установил модуль infosmska (http://www.infosmska.ru/ ) для смс рассылок.
Но почему-то при совершении заказа вот такая ошибка выдается
Notice: Undefined offset: 1 in /system/library/oc_infosmska/gateway.php on line 56

код gateway.php  - http://pastebin.com/jsTxSf3m

<?php

class OCInfosmskaGateway {
    public function __construct($registry) {
        $this->db = $registry->get('db');
        $this->config = $registry->get('config');
    }


    public function get_order_info($textarea, $order_id, $order_status_id = 0) {
        $order = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_id = $order_id LIMIT 1");
        $currency = $this->db->query("SELECT symbol_left,symbol_right FROM `" . DB_PREFIX . "currency` WHERE currency_id = " . $order->row['currency_id'] . " LIMIT 1");


        $total = $currency->row['symbol_left'].number_format(round($order->row['total'] * $order->row['currency_value'], 2), 2).$currency->row['symbol_right'];


        $g_list = $status->row['name'] = '';


        if (stripos($textarea, '{GOODS_LIST}') !== false) {
            $goods_list = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order_product` WHERE order_id = $order_id");


            foreach ($goods_list->rows as $k => $v)
                $g_list .= ($k ? "\n" : '').$v['name'].':'.$v['model'].':'.$v['quantity'].':'.$currency->row['symbol_left'].
                        number_format(round($v['total'] * $order->row['currency_value'], 2), 2).$currency->row['symbol_right'];
        }


        if (stripos($textarea, '{ORDER_STATUS}') !== false)
            $status = $this->db->query("SELECT name FROM `" . DB_PREFIX . "order_status` WHERE order_status_id = " . ($order_status_id ? $order_status_id : $order->row['order_status_id']) . " AND language_id = ".$order->row['language_id'] . " LIMIT 1");


        $macros = array('~\{ORDER_NUM\}~i', '~\{ORDER_SUM\}~i', '~\{ORDER_STATUS\}~i', '~\{FIRST_NAME\}~i', '~\{LAST_NAME\}~i', '~\{CR_PHONE\}~i', '~\{CR_ADDR\}~i', '~\{GOODS_LIST\}~i');


        $value = str_replace('$', '\$', array($order_id, $total, $status->row['name'], $order->row['firstname'], $order->row['lastname'], $order->row['telephone'],
                                                $order->row['shipping_address_1'].($order->row['shipping_address_2'] ? ' '.$order->row['shipping_address_2'] : ''), $g_list));


        return array('phone' => $order->row['telephone'], 'message' => preg_replace($macros, $value, $textarea), 'order_status_id' => $order->row['order_status_id']);
    }




    public function send($login, $password, $phone, $text, $sender)
    {
        $host = "api.infosmska.ru";
        $fp = fsockopen($host, 80);
        fwrite($fp, "GET /interfaces/SendMessages.ashx" .
        "?login=" . rawurlencode($login) .
        "&pwd=" . rawurlencode($password) .
        "&phones=" . rawurlencode($phone) .
        "&message=" . rawurlencode($text) .
        "&sender=" . rawurlencode($sender) .
        " HTTP/1.1\r\nHost: $host\r\nConnection: Close\r\n\r\n");
        fwrite($fp, "Host: " . $host . "\r\n");
        fwrite($fp, "\n");

        $response = "";
          while(!feof($fp)) {
          $response .= fread($fp, 1);
          }
            fclose($fp);
            list($other, $responseBody) = explode("\r\n\r\n", $response, 2);
            list($other, $ids_str) = explode(":", $responseBody, 2);
            list($sms_id, $other) = explode(";", $ids_str, 2);
        return $sms_id;
    }




}

56 строка: list($sms_id, $other) = explode(";", $ids_str, 2);

 

я так понял, проблема в том. что функция explode как-то не так отрабатывает... Пожалуйста, помогите

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.