Списък с офиси на Еконт и Спиди

Convenix

Member
Здравейте!

Знаете ли дали съществува списък с офисите на Еконт и Спиди?

Искам да сложа 2 падащи менюта, от едното да се избира населеното място, а от другото да се избира офиса в населеното място.

Има ли такива готови списъци?

Благодаря!
 

voTkaPoweR

Member
Здравей,

Интерсна тема ще се заформи :D

Отговорът на въпроса ти е и да и не. Искам да кажа, че и двата доставчика предлагат списък с офисите си в сайтовете им и от теб зависи как ще ги вземеш - дали с паяк или с някакво апи.

Еконт предлагат такова Api и документация към него което улеснява доста. За спийди беше малко по-сложно.
Това е четиво за това как се ползва апи-то им. - https://www.econt.com/documents/XML_manual.pdf
Общо взето имаш някакъв ендпоинт в който качваш един xml файл и ти изплюва офисите с градовете, от там вече ти трябва да си ги запишеш в базата както ти намериш за добре, за да си направиш желаната функция.

Ето кода:

PHP:
// https://ee.econt.com/
    $username = 'iasp-dev'; // your username
    $password = 'iasp-dev'; // your password
 
    $service = 'http://demo.econt.com/e-econt/xml_service_tool.php'; // demo url
    //$service = 'http://www.econt.com/e-econt/xml_service_tool.php'; // live url

    $request = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><request/>');

    $client = $request->addChild('client');
    $client->addChild('username', $username);
    $client->addChild('password', $password);
 
    // types: cities_zones, cities_regions, cities_streets, shipments, shipping, cities, cancel_shipments, cities_quarters, offices, profile, access_clients, delivery_days
    $request->addChild('request_type', 'access_clients');

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $service);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, array('xml' => $request->asXML()));

    $response = simplexml_load_string(curl_exec($ch));

    curl_close($ch);
 
    var_dump($response); // това е отговора -

Това ще сработи, но имай предвид, че може да липсва някой новодобавен офис от последните 1-2месеца, ако нямаш регистрация в еконт и не си си въвел данните в кода.
Както виждаш изключително лесно е да вземеш информация за градове, офиси, региони, кварали, работни дни и часове и т.н
Би трябвало да ти свърши работа. Ще следя темата, ако някой колега знае лесен начин за вземане на офисите от спийди, тъй като аз го правя с паяк.

пс. сега видях,че има отваряна такава тема и можеш да я разгелдаш общо взето казват същото, но все пак хвърли едно око: https://www.predpriemach.com/threads/api-или-xml-за-списък-с-офисите-на-ЕКОНТ.68706/

П.С. :D - намерих въпросните xml-и извадени от някой колега, можеш да ползваш тях, само трябва да си ги вкараш в базата данни. - https://github.com/svetlio/uc_econt/tree/master/data
 
Последно редактирано:

Convenix

Member
Благодаря, колега за бързия отговор и за помощта!

Чудесно, точно за Еконт ми трябваха, защото за Спиди намерих от един друг сайт списъците.
 

Горе