Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: webapi allegro
Forum PHP.pl > Forum > PHP
Kryszic
Witam potrzebuję pomocy z webapi. Nie za bardzo się czuje w programowaniu obiektowy a muszę na stronę www ściągnąć dane kontrahentów, którzy dokonali zakupów u danego użytkownika. Poniżej wkleje kod który mam proszę o indormację co jest nei tak i jak go wywołać, żeby na stronie wyświetliły mi się wyniki:

  1.  
  2. class AllegroWebAPI {
  3. protected $_instance;
  4. protected $_config;
  5. protected $_session;
  6. protected $_client;
  7. protected $_local_version;
  8.  
  9. /* Określenie kraju (1 = Polska) */
  10. const COUNTRY_CODE = 1;
  11.  
  12. /**
  13.   * Zapis ustawień oraz połączenie z WebAPI
  14.   */
  15. public function __construct() {
  16. $this->_config = array(
  17. 'allegro_key' => ALLEGRO_KEY,
  18. 'allegro_login' => ALLEGRO_LOGIN,
  19. 'allegro_password' => ALLEGRO_PASSWORD
  20. );
  21.  
  22. $this->_client = new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  23. }
  24.  
  25. public function GetPostBuyFormsData($Options) {
  26. $this->checkConnection();
  27. return $this->objectToArray($this->_client->doGetPostBuyFormsData(
  28. $this->_session['session-handle-part'],
  29. $Options
  30. ));
  31. }
  32. }
  33.  
  34.  


Jeśli kod jest dobry to jak go wyświetlić na stronie żebym widzieł wyniki?

Z góry dzięki z pomoc
piotr.kazmierczak
Z szybkiego przeglądania dokumentacji powiedziałbym, że musisz w widoku zrobić tak:

  1. <?php
  2. $allegro= new AllegroWebAPI();
  3. $dataArray = $allegro->GetPostBuyFormsData(array(1,2,3,4)); // Transactions ids numbers
  4. ?>
  5.  
  6. <?php foreach($dataArray as $data): ?>
  7. Id kupującego <?php echo $data["post-buy-form-buyer-id"] ?>
  8. <?php endforeach ?>


Nigdy nie używałem tego API, ale wszystko jest w dokumentacji więc powinieneś sobie poradzić.
Kryszic
Ja wiem, że ejst dokumentacja nawet się z nią zapoznałem ale tak jak napisałem wyżej nie zajmuję się programowaniem obiektowym i nie bardzo wiem jak się w nim poruszać nawet jeśli chodzi o głupie wyświetlenie wyników danej funckji czy tam klasy. sad.gif Dlatego poprosiłem o korekte tego co mam lub jeśli to jest dobrze to o wpisanie wywołania.
piotr.kazmierczak
Dlatego napisałem Ci jak to wywołać smile.gif
Kryszic
No własnie to nie ruszyło smile.gif Czy może to być spowodowane błędem w classie? nie wiem może coś pominąłem ?
cycofiasz
  1. <?php
  2.  
  3. define('ALL_LOGIN' , 'login allegro');
  4. define('ALL_PASS' , 'hasło');
  5. define('ALL_KEY' , 'klucz_webapi');
  6. $nr_aukcji = 1889144285;
  7.  
  8. $client = new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  9.  
  10. $version = $client->doQuerySysStatus(1, 1, ALL_KEY);
  11. $session = $client->doLoginEnc(ALL_LOGIN, base64_encode( hash('sha256',ALL_PASS,1) ), 1, ALL_KEY, $version['ver-key']);
  12.  
  13. $A = $client->__soapCall('doGetPostBuyData', array('session-handle' => $session['session-handle-part'],'items-array' => array($nr_aukcji)) );
  14. print_r($A);
  15.  
  16. ?>
Kryszic
$nr_aukcji = 1889144285;

czy to jest numer konkretnej aukcji, z której mi pobierze dane kontrahenta? Mi załeży na tym, żeby wyświetlić dane wszystkcih kontrahentów którzy zapupili "coś" na wszystkich aukjach danego użytkownika.

Kod który jest powyżej wywala mi na ekran:

Array ( [0] => stdClass Object ( [item-id] => 1889144285 [users-post-buy-data] => Array ( ) ) )

Po podstawieniu numeru akkcji danego użytkonika mam:

Array ( [0] => stdClass Object ( [item-id] => numer aukcji ) )

a mi zależy żebym mi wywaliło na ekran:
imie nazwisko, adres itp.
cycofiasz
Jest to numer konkretnej aukcji, z której mi pobierze dane kontrahenta. Żeby pobrać wszystkich kupujących ze wszystkich aukcji to już trzeba użyć szeregu metod w celu uzyskania id aukcji.

Numer aukcji musi należeć do użytkownika którego wpisujemy jako ALL_LOGIN
Kryszic
Dobra podstawielm numer aukcji zsakończonej i działa smile.gif Dużo roboty będzie z tym zeby sam automatycznie mi wywalał wszystkich kontrahentów z aukcji zakończonych? Żebym nie musiał wpisywać numeru aukcji?
cycofiasz
Nie jest dużo wg mnie. Poczytaj dokumentację, masz tam metody doMyAccount2, doGetSiteJournal które możesz wykorzystać do wychwycenia zakończonych aukcji.

Poświęć na to trochę czasu, przy okazji nauczysz się nieco OOP.
Kryszic
No dobra dzięki bardzo za pomoc.I jeszcze jedno pytanie jak bym miał problem żeby to ogarnąć to czy była by taka możliwość żebym Ci to zlecił i oczywiście zapłacił za robote? jeśli tak to jaka była by cena?

Napiszę jescze raz o co chodzi.


Chce pobrać dane wszystkich kontrahentów którzy dokonali zakupów u wskazanego loginem hasłem i kluczem użytkownika.
cycofiasz
Jest taka możliwość. Jak coś to pw.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.