Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> API Allegro - stronicowanie pobranych aukcji, Po pobraniu aukcji allegro (API) brak stronicowania :(
radziu
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 29.03.2009

Ostrzeżenie: (0%)
-----


Witam szanownych kolegów,
tym razem poległem na WebApi Allegro, mam drobny kłopot.

Na tyle na ile potrafiłem, rozwiązałem swoje problemy a api_allegro we własnym zakresie, pół dnia siedziałem nad listowaniem aukcji na swojej stronie.
W końcu, kiedy pobrałem aukcje, poukładałem w listę w tabeli, pojawił mi się problem stronicowania tych aukcji i dzielenie ich na porcje.

chciałbym je podzielić na porcje po 10 aukcji, ale nie wiem jak się do tego zabrać, kompletna niemoc niestety (IMG:style_emoticons/default/smile.gif)

Aktualnie mam na koncie 38 aukcji, skrypt wyświetla wszystkie, ale z ustawionym parametrem 'limit' => 50 pokazuje mi 38 wierszy z aukcjami i pozostałe 12 puste....

  1. <? //początek wyświetlania/pobierania aukcji ?>
  2. <table class="oferta">
  3. <tr class="th">
  4. <td width="30">nr.</td>
  5. <td width="106">FOTO</td>
  6. <td width="397">TYTUŁ Aukcji</td>
  7. <td width="94">Nr.aukcji</td>
  8. <td width="156">KupTeraz</td>
  9. </tr>
  10. <?php
  11. define('ALLEGRO_ID', 'allegro id numer');
  12. define('ALLEGRO_LOGIN', 'nazwa użytkownika');
  13. define('ALLEGRO_PASSWORD', 'hasło do konta allegro');
  14. define('ALLEGRO_KEY', 'API klucz');
  15. define('ALLEGRO_COUNTRY', 1);
  16. require_once 'class.allegrowebapi.php';
  17.  
  18. $allegro = new AllegroWebAPI();
  19. $allegro->Login();
  20. $items_list = $allegro->GetUserItems(array('offset' => 0,'limit' => 50));
  21. for($i=0;$i<50;$i++)
  22. {
  23.  
  24. $nr_aukcji = $items_list['user-item-list'][$i]->{'it-id'};
  25. $tytul_aukcji = $items_list['user-item-list'][$i]->{'it-name'};
  26. $foto_mini = $items_list['user-item-list'][$i]->{'it-thumb-url'};
  27. $kup_teraz = $items_list['user-item-list'][$i]->{'it-buy-now-price'};
  28. echo "<tr class='rowTable_a'>";
  29. echo " <td>$i</td>";
  30. echo "<td><a href='http://allegro.pl/show_item.php?item=$nr_aukcji' title='$tytul_aukcji' target='_blank'><img src='$foto_mini'></a></td>";
  31. echo "<td>$tytul_aukcji</td>";
  32. echo "<td>$nr_aukcji</td>";
  33. echo "<td>$kup_teraz <b>PLN</b></td>";
  34. }
  35. ?>
  36.  
  37. </table>
  38. <? //koniec wyświetlania/pobierania aukcji ?>



Kompletnie zabrakło mi pomysłu jak poukładać ten listing w porcję po 10 aukcji, pomożecie...?


Przykład listingu aukcji na stronie

To jest wersja testowa mojego systemu, więc nie zwracajcie uwagi na detale (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
artur_dziocha
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 53
Dołączył: 18.09.2007
Skąd: Radom

Ostrzeżenie: (0%)
-----


Nie robiłem tego na stronie. Musiałem tylko pobrać popaczkowane i odpoowiednio je zapisać(IMG:style_emoticons/default/smile.gif)

Od razu mówię, że nie sprawdzane:) Pokombinuj

Do tej swojej klasy dopisz sobie funkcję zliczającą wszystkie aukcje z kategorii "Sprzedaję" np u siebie mam tak
  1. public function allItemsCount($type = 'sell')
  2. {
  3. return $this->client->doMyAccountItemsCount(
  4. $this->session['session-handle-part'],
  5. $type,
  6. ''
  7. );
  8. }


  1. <? //początek wyświetlania/pobierania aukcji ?>
  2. <table class="oferta">
  3. <tr class="th">
  4. <td width="30">nr.</td>
  5. <td width="106">FOTO</td>
  6. <td width="397">TYTUŁ Aukcji</td>
  7. <td width="94">Nr.aukcji</td>
  8. <td width="156">KupTeraz</td>
  9. </tr>
  10. <?php
  11. define('ALLEGRO_ID', 'allegro id numer');
  12. define('ALLEGRO_LOGIN', 'nazwa użytkownika');
  13. define('ALLEGRO_PASSWORD', 'hasło do konta allegro');
  14. define('ALLEGRO_KEY', 'API klucz');
  15. define('ALLEGRO_COUNTRY', 1);
  16. require_once 'class.allegrowebapi.php';
  17.  
  18. $allegro = new AllegroWebAPI();
  19. $allegro->Login();
  20. $limit = 10;
  21. $all_items_count = $allegro->allItemsCount();
  22. $ile_stron = $all_items_count / $limit +1;
  23.  
  24. //Paginacja
  25. for($i = 0; $i < $ile_stron; $i++)
  26. {
  27. echo "<a href='localhost?page=".$i."'>".$i."</a>";
  28. }
  29.  
  30. $offset = isset($_GET['page']) ? (int) $_GET['page']-1 : 0;
  31.  
  32. $items_list = $allegro->GetUserItems(array($offset, $limit));
  33. for($i=0;$i<$limit;$i++)
  34. {
  35.  
  36. $nr_aukcji = $items_list['user-item-list'][$i]->{'it-id'};
  37. $tytul_aukcji = $items_list['user-item-list'][$i]->{'it-name'};
  38. $foto_mini = $items_list['user-item-list'][$i]->{'it-thumb-url'};
  39. $kup_teraz = $items_list['user-item-list'][$i]->{'it-buy-now-price'};
  40. echo "<tr class='rowTable_a'>";
  41. echo " <td>$i</td>";
  42. echo "<td><a href='http://allegro.pl/show_item.php?item=$nr_aukcji' title='$tytul_aukcji' target='_blank'><img src='$foto_mini'></a></td>";
  43. echo "<td>$tytul_aukcji</td>";
  44. echo "<td>$nr_aukcji</td>";
  45. echo "<td>$kup_teraz <b>PLN</b></td>";
  46. }
  47. ?>
  48.  
  49. </table>
  50. <? //koniec wyświe
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 15:15