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


Фото
* * * * * 3 голосов

Внедрение API Нова Пошта


  • Чтобы отвечать, сперва войдите на форум
47 ответов в теме

#21 mishanya

mishanya
  • Фрилансер
  • 2 566 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 02.08.2015 - 23:17

Не работает код, после завершения заказа ошибка:

 


Fatal error: Call to a member function tracking() on a non-object in /home/virtwww/w_shop_113c0b12/http/view/OrderView.php on line 116

 

ошибка вам говорит что функция tracking не является объектом. нужно смотреть сам файл OrderView.php и тот откуда эта ф-я вызывается, прикрепите файл.



#22 Wallkar

Wallkar
  • Пользователь
  • 5 сообщений
  • Пользователь

Опубликовано 02.08.2015 - 23:26

в  файл OrderView.php  я добавлял только 

 

// Получим статус посылки по номеру ТТН от Новой почты

        
 $this->design->assign('tracking', $this->np->tracking($order->delivery_number));
 
все делал строго по инструкции, может что недоглядел.
 
 

Прикрепленные файлы:

  • Прикрепленный файл  OrderView.php   4,86К   5 раз скачано
  • Прикрепленный файл  NP.php   5,6К   11 раз скачано

Изменено: Wallkar, 02.08.2015 - 23:55


#23 mishanya

mishanya
  • Фрилансер
  • 2 566 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 03.08.2015 - 00:18

в  файл OrderView.php  я добавлял только 

 

// Получим статус посылки по номеру ТТН от Новой почты

        
 $this->design->assign('tracking', $this->np->tracking($order->delivery_number));
 
все делал строго по инструкции, может что недоглядел.

 

в api/Simpla.php класс NP зарегистрирован?

'NP'    =>  'novaposhta'

попробуйте еще обратиться к класу с большой буквы

$this->design->assign('tracking', $this->NP->tracking($order->delivery_number));


#24 Wallkar

Wallkar
  • Пользователь
  • 5 сообщений
  • Пользователь

Опубликовано 03.08.2015 - 16:02

Simpla.php у меня вобще небыло я его создавал по подобию https://github.com/p.../api/Simpla.php
и прописал   'NP' => 'novaposhta'

 

с большой буквы также писал, результат нулевой. У меня стойкое впечатления что я что-то не то делаю.



#25 mishanya

mishanya
  • Фрилансер
  • 2 566 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 03.08.2015 - 16:22

Simpla.php у меня вобще небыло я его создавал по подобию https://github.com/p.../api/Simpla.php
и прописал   'NP' => 'novaposhta'

 

с большой буквы также писал, результат нулевой. У меня стойкое впечатления что я что-то не то делаю.

 

видимо у вас есть файл Newcms.php? тогда нужно добавить туда 

'NP' => 'novaposhta'

и вызывать как описано выше


Изменено: mishanya, 03.08.2015 - 16:22


#26 Wallkar

Wallkar
  • Пользователь
  • 5 сообщений
  • Пользователь

Опубликовано 03.08.2015 - 16:38

Пришлось переиминовать где надо Simpla в Newcms  и вот что в итоге:
Fatal error: Class 'novaposhta' not found in /home/virtwww/w_shop-wallkar_113c0b12/http/api/Newcms.php on line 69 

 

Но клас то есть в Ньюкмс все как надо..



#27 Simplamarket

Simplamarket
  • Забаненый
  • 533 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x

Опубликовано 03.08.2015 - 16:46

Пришлось переиминовать где надо Simpla в Newcms  и вот что в итоге:
Fatal error: Class 'novaposhta' not found in /home/virtwww/w_shop-wallkar_113c0b12/http/api/Newcms.php on line 69 

 

Но клас то есть в Ньюкмс все как надо..

Делать на нуленной симпле а-та-та.



#28 Wallkar

Wallkar
  • Пользователь
  • 5 сообщений
  • Пользователь

Опубликовано 03.08.2015 - 16:49

Значит работать не будет ?  Смысл покупать для теста сырую систему.. 



#29 Kosjak76

Kosjak76
  • Модератор
  • 3 826 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 03.08.2015 - 17:07

Будет, если все сделать правильно))

Откройте этот класс и сравните с соседними файлами...

Класс писался под Симплу, а не кривые нуллы.



#30 mishanya

mishanya
  • Фрилансер
  • 2 566 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 03.08.2015 - 18:54

Значит работать не будет ?  Смысл покупать для теста сырую систему.. 

Newcms.php прикрепите



#31 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 7 124 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 03.08.2015 - 19:10

Значит работать не будет ?  Смысл покупать для теста сырую систему..

А смысл использовать кривой нулл?
В отличии от вашего нулла оригинальная симпла работает на ура, и многие дополнения ставятся без проблем.
Мало того симплу можно использовать на локалхосте и для этого не нужен нулл.
P.S. Вообще не люблю работать с шаровиками которые хотят все, а платить не хотят ни копейки.

#32 Kosjak76

Kosjak76
  • Модератор
  • 3 826 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 03.08.2015 - 20:01

В этом нулле переделано немного ядро, точнее не переделано, а автозаменой поменяно Simpla на Newcms :)

Класс, написанный для Симлы, начинается примерно так

require_once('Simpla.php');

class Blog extends Simpla
{

А в нулле все немного по-другому  :)



#33 Kosjak76

Kosjak76
  • Модератор
  • 3 826 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 03.08.2015 - 20:07

Поэтому ставить на НУЛЛ модули, написанные для чистой Симплы, а потом кричать - НЕ РАБОТАЕТ!!! 

Это глупо. Если есть какой-то опыт программирования - ищите отличия, если нет - ставте ЧИСТУЮ Симплу и убедитесь, что все ОК.

Хотя про Новую Почту - не уверен :)

Сам потратил неделю, чтобы нормально заточить работу с НП. Но это уже проблемы не Симплы...

Я офигел, когда увидел, что ответ сервера НП для Харькова или Киева имеет одну структуру, а для Ровно или Николаева - другую :)



#34 sashagomel

sashagomel
  • Пользователь
  • 6 сообщений
  • Программирование

Опубликовано 24.10.2015 - 09:46

Приветствую всех добрых людей)

ребят пытаюсь реализовать даный модуль но что то не получается

1. для тех у кого нулл то в место require_once('Simpla.php');

 

 class NP extends Simpla{ писать так

require_once('Newcms.php');
 

 class NP extends Newcms{

и клас не забудьте прописать (дело в точ что автор пишет создайте файл np.php а клас обозвал 'NP'    =>  'novaposhta'  а необходимо писать так 'NP'    =>  'np'

 

теперь перейдем к моим бедам (

1 я ошибка такого рода (

PHP Notice:  Undefined property: stdClass::$delivery_number in /home/ya/public_html/ya/view/OrderView.php on line 116

 

2 я ошибка такого рода

PHP Warning:  simplexml_load_string(): Entity: line 1: parser error : Start tag expected, '<' not found in /home/ya/public_html/ya/api/np.php on line 186

 

вот код по первой ошибке

// Получим статус посылки по номеру ТТН от Новой почты
        
        $this->design->assign('tracking', $this->NP->tracking($order->delivery_number));
 
вот код по второй
 
 
    public function tracking($ttn){
    $ttn = '20450005836914';
    $xml='
    <?xml version=\"1.0\" encoding=\"UTF-8\"?>
    <file>
    <auth>'.$this->api_key.'</auth>
    <tracking>
       <barcode>'.$ttn.'</barcode>
    </tracking>
    </file>';
    $xml = simplexml_load_string($this->send($xml));
    //var_dump($xml);
    return($xml);
    
    }
    
        
 }
 
186 строка здесь $xml = simplexml_load_string($this->send($xml));
 
что я делаю не так? модуль не работает, версия php 5.6 может от этого прошу помочь знающих спасибо!


#35 sashagomel

sashagomel
  • Пользователь
  • 6 сообщений
  • Программирование

Опубликовано 24.10.2015 - 10:08

если я правильно понимаю по первой ошибке 

она от того происходит что мы добавили в базу данных новое поле delivery_number но не запросили данные из нее и когда обращыемся к функции tracking в файле np.php мы передаем пустое поле от того и лезит данная ошибка 

или может от того что в файле OrderView.php не понят что это за переменная так ккак она не где не определена?

 

где я прав и как это все исправить?



#36 Julius123

Julius123
  • Пользователь
  • 249 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 24.10.2015 - 12:18

Я так и не понял как сделать автозаполнение поля Адрес при оформлении заказа из БД новой почты?



#37 sashagomel

sashagomel
  • Пользователь
  • 6 сообщений
  • Программирование

Опубликовано 24.10.2015 - 17:35

Я так и не понял как сделать автозаполнение поля Адрес при оформлении заказа из БД новой почты?

в каком смысле что бы из бд брало или что обы из апи новой почты?



#38 Julius123

Julius123
  • Пользователь
  • 249 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 24.10.2015 - 17:49

в каком смысле что бы из бд брало или что обы из апи новой почты?

это я не так сказал:) из api



#39 sashagomel

sashagomel
  • Пользователь
  • 6 сообщений
  • Программирование

Опубликовано 24.10.2015 - 18:03

это я не так сказал :) из api

а какой модуль используешь? напиши весть код апи что исползуем и как в шаблоне прописываешь



#40 Julius123

Julius123
  • Пользователь
  • 249 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Украина

Опубликовано 24.10.2015 - 18:34

а какой модуль используешь? напиши весть код апи что исползуем и как в шаблоне прописываешь

api я сейчас вообще не использую, только хочу сделать автозаполнение с помощью апи, которое в этой теме






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых