steve07 Опубликовано 11.08.2023 в 09:22 Поделиться Опубликовано 11.08.2023 в 09:22 if(isset($parts[1])) { if(isset($item['russian_tracking_no']) && isset($query_order->row['payment_country_id']) && $query_order->row['payment_country_id'] == 176 && empty($query_order_nrsdek->row['nr_sdek']) && $checks[$item['russian_tracking_no']] != '1') { $this->setOrderStatus($parts[0],$item['russian_tracking_no']); $this->log->write('СТАТУС ОБНОВЛЕН! Письмо (заказ '. $parts[0] . ') отправлено на ' . $email); $checks[$item['russian_tracking_no']] = '1'; } else { $this->log->write('Письмо (заказ '. $parts[0] . ') НЕ отправлено'); } } Этот код у меня выполняется в цикле, получаю из учетной системы по API данные (трек номер) на каждую позицию (лот) в заказе . Как правило, трек номер один и тот же на все товары в заказе, но бывает что и разные. Тем самым мне надо сделать проверку, чтобы при обновлении трек номера у одной позиции в заказе письмо отправлялось, а при обновлении у следующих позиций письма уже не отправлялись. Так вот, я сделал проверку, $checks[$item['russian_tracking_no']] != '1', и в конце цикла я присваиваю этой переменной значение 1. Но при первом проходе в логи валится ошибка: Цитата 2023-08-11 10:48:14 - PHP Notice: Undefined variable: checks in как мне правильно сделать проверку или переписать условие? 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexDW Опубликовано 11.08.2023 в 10:06 Поделиться Опубликовано 11.08.2023 в 10:06 if .. empty($checks[$item['russian_tracking_no']]) 1 Цитата модули для удобной работы с Opencart Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.