Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Allegro WebAPI - panel aukcji allegro
pafeu
post
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


buduję panel aukcji allegro
i utknąłem na linkach do wyświetlonych w panelu aukcji miniatur
potrzebuję podlinkować miniatury aby po kliknięciu na wybraną przechodziło do tejże aukcji
w jaki sposób pobrać link do aukcji z allegro WebApi

Ten post edytował pafeu 1.02.2013, 23:13:48
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
sabat24
post
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Pobierasz numer aukcji, a link sobie generujesz jako show_item.php?item=nr_aukcji
Go to the top of the page
+Quote Post
pafeu
post
Post #3





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


no tak - ale zaćmienie miałem (IMG:style_emoticons/default/yahoo.gif) masz "pomógł"
dla potomnych podam jak podlinkować miniaturę w panelu aukcji allegro
  1. echo '<a href="http://allegro.pl/show_item.php?item='.$items['user-item-list'][$i]->{'it-id'}.'"><img src="'.$items['user-item-list'][$i]->{'it-thumb-url'}.'"/></a>'.'<br/>';



mam jeszcze jedno pytanie
jak pobrać ilość wystawionych aukcji?

sam sobie odpowiem
  1. user-item-count


paginacja / stronicowanie
czy ma ktoś może jakiś prosty kod do podzielenie wyników na strony?


Ten post edytował pafeu 1.02.2013, 23:36:30
Go to the top of the page
+Quote Post
djgarsi
post
Post #4





Grupa: Zarejestrowani
Postów: 459
Pomógł: 26
Dołączył: 1.06.2009

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


Skoro wyniki są tablicą to w czym problem? Wyświetlaj aukcje pętlą (np. for czy czym tam chcesz) i GET'em przekazuj od którego elementu ma być pokazywana część aukcji.
Go to the top of the page
+Quote Post
pafeu
post
Post #5





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


w Allegro WebApi trzeba zastosować limit i offset
niestety nic w internecie na ten temat nie znalazłem
może ktoś wie coś na ten temat?
  1. $soap=new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  2. $userId= $soap->doGetUserId(1,'login','','xxxxxxxxxx');
  3. $items=$soap->doGetUserItems($userId,'xxxxxxxxxx',1);
  4. //wyświetlanie ilości aukcji użytkownika
  5. echo 'użytkownik ma '.$items['user-item-count'].' aukcji';
  6. //iteracja do 25, gdyż parametr limit w doGetUserItems jest domyślnie ustawiony na 25
  7. for($i=0;$i<25;$i++)
  8. {
  9. echo $items['user-item-list'][$i]->{'it-name'}.'<br/>
  10. }

przyjmijmy, że mam 100 aukcji do wyświetlenie
jak zmienić powyższy kod?

Ten post edytował pafeu 3.02.2013, 00:36:38
Go to the top of the page
+Quote Post
sabat24
post
Post #6





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Funkcja doGetUserItems pozwala na podanie parametru Offset i Limit, zatem zachowuje się dokładnie tak samo, jak choćby polecenie LIMIT w MySQLu. Twój przykład pochodzi z dokumentacji webapi, gdzie ta funkcja jest dokładnie omówiona -> http://allegro.pl/webapi/documentation.php...03#method-input
Go to the top of the page
+Quote Post
kristaps
post
Post #7





Grupa: Zarejestrowani
Postów: 279
Pomógł: 36
Dołączył: 1.03.2012

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


Najpierw pobierasz łączną ilość aukcji, następnie dzielisz przez limit, który ustawiłeś dla metody doGetUserItems - załóżmy 25. Później pętla i zabawa z zwiększaniem offset o + 1. Jeżeli planujesz odpalać skrypt cyklicznie, to polecam napisać sobie w miarę konkretną obsługę błędów. Praca z api allegro nie będzie takim koszmarem.
Go to the top of the page
+Quote Post
pafeu
post
Post #8





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


  1. $offset = ($_GET['id']) ;
  2. $limit = 5;
  3. $soap=new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  4. $userId= $soap->doGetUserId(1,'xxx','','xxx');
  5. $items=$soap->doGetUserItems($userId,'xxx',1,$offset,$limit);
  6. $ile_stron = $items['user-item-count'] / $limit;
  7.  
  8. for($i = 0; $i < $ile_stron; $i++)
  9. {
  10. echo '<a href="index.php?id='.$i.'"> '.$i.' </a>';
  11. }
  12.  
  13. for($i=0;$i<$limit ;$i++)
  14. {
  15. echo $items['user-item-list'][$i]->{'it-name'}.'<br/>';
  16. }

wystrugałem taki kod - niby działa dobrze ale nie do końca
jak przejdę do ostatniej strony z wynikami do wyświetlenia to jeżeli na tej ostatniej stronie wyświetli się np.:2 wyniki a $limit=5 to dalej wyświetla 3 błędy zamiast brakujących wyników do wyświetlenia
Notice: Undefined offset: 2 in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76
Notice: Trying to get property of non-object in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76
Notice: Undefined offset: 3 in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76
Notice: Trying to get property of non-object in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76
Notice: Undefined offset: 4 in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76
Notice: Trying to get property of non-object in C:\wamp\www\panel-aukcji-1-test-stronicowania\index.php on line 76

@ maskuje ten błąd ale czy to dobrze?
Czy taki kod jest poprawny?
A może można to zrobić lepiej?

Z powodu braku odpowiedzi rozumiem, że to co zrobiłem jest dobrze zrobione i nie można tego zrobić lepiej.

No dobrze to mamy panel aukcji allegro wyświetlający nasze aukcje na naszej stronie www.
Ale w takiej postaci nie możemy go wstawić do naszych aukcji na allegro.
Domyślam się, że muszę teraz skorzystać z GD aby pozamieniać wszystko na bitmapy.
Czy dobrze myślę?
Jak się do tego zabrać?

Ten post edytował pafeu 6.02.2013, 01:21:13
Go to the top of the page
+Quote Post
sabat24
post
Post #9





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Źle robisz. Sprawdź najpierw czy te wartości istnieją i jeśli nie, to przerwij pętle albo oblicz najpierw, ile powinna wynosić ostatnia pętla.
Ja panel allegro robiłem tak, że wstawiałem po prostu:
  1. <a href="panel.php?aukcja=1" title="Inna nasza aukcja"><img src="panel.php?image=1" alt="Inna nasza aukcja" /></a>


Kliknięcie na link przekierowywało do skryptu, który na podstawie parametru, pobierał link aukcji i robił przekierowanie, a obrazek generował się też przez plik php jako jpg.

Ten post edytował sabat24 10.02.2013, 00:46:39
Go to the top of the page
+Quote Post
pafeu
post
Post #10





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


Cytat(sabat24 @ 10.02.2013, 00:41:25 ) *
Źle robisz...

Nie rozumiem o co Tobie chodzi. Napisz coś więcej - co źle robię?
Skrypt działa dobrze i wyświetla aukcje.
Teraz chcę panel przerobić tak aby było możliwe wstawienie do aukcji na allegro.
Allegro przyjmuje tylko odnośniki <a href=...
Go to the top of the page
+Quote Post
sabat24
post
Post #11





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Cytat
@ maskuje ten błąd ale czy to dobrze?

Nie masz maskować, tylko go wyeliminować. Co masz w pierwszej części mojej odpowiedzi, jak to wyeliminować.
Go to the top of the page
+Quote Post
pafeu
post
Post #12





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


Cytat(sabat24 @ 11.02.2013, 00:36:40 ) *
Nie masz maskować, tylko go wyeliminować. Co masz w pierwszej części mojej odpowiedzi, jak to wyeliminować.

postawiłem taki warunek:
  1. if (isset($items['user-item-list'][$i]))
  2. {
  3. ...
  4. }

i wygląda na to, że teraz jest dobrze - chyba.

Teraz chcę panel przerobić tak aby było możliwe wstawienie do aukcji na allegro.
Allegro przyjmuje tylko odnośniki <a href=...
Jak się za to zabrać?



proszę, może ktoś mi podpowie?

(IMG:style_emoticons/default/co_jest.gif)

proszę podpowiedzcie coś w tym temacie bo nie mam żadnego punktu zaczepienia (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
ber32
post
Post #13





Grupa: Zarejestrowani
Postów: 332
Pomógł: 22
Dołączył: 6.07.2010

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


Co to znaczy wstawianie. Czy chcesz dodać nową aukcję?
Go to the top of the page
+Quote Post
pafeu
post
Post #14





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 9.10.2011

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


Cytat(ber32 @ 7.03.2013, 20:54:48 ) *
Co to znaczy wstawianie. Czy chcesz dodać nową aukcję?

wstawianie - inaczej mówiąc umieszczenie w treści aukcji

(IMG:style_emoticons/default/oneeyedsmiley02.png)

jaki jest następny krok przy tworzeniu panelu aukcji allegro?
proszę, może ktoś mi podpowie?
Go to the top of the page
+Quote Post

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: 22.08.2025 - 20:38