Witajcie, mam mały (a jednocześnie ogromny) problem ze skryptem opartym na Allegro WebApi. Mianowicie: próbuję napisać skrypt wyświetlający mi nr najbardziej zagnieżdżonych kategorii allegro (liści), które należą do danej kategorii nadrzędnej (w tym przypadku 'odziez obuwie dodatki'). Problem mam z jednym if-em: gdy robię warunek za pomocą koniunkcji to nie działa, gdy zagnieżdżam if w ifie to działa... i nie wiem o co biega...
Poniżej problematyczny fragment kodu.. Z góry wielkie dzięki za wskazanie błędu (może zmęczenie już daje popalić i się czegoś nie zauważa).
$kategorieObiekt = $client->doGetCatsData($zapytanie_kategorie['countryId'],$zapytanie_kategorie['localVersion'],$zapytanie_kategorie['webapiKey']);
echo 'PONIŻEJ LISTA KATEGORII:<br/>';
$kategorieTablica = $kategorieObiekt['cats-list'];
foreach ($kategorieTablica as $kategoria) {
//od tego miejsca $kategoria to obiekt typu stdClass()
$sciezkaKategoriiObiekt = $client->doGetCategoryPath($session['session-handle-part'],$kategoria->{'cat-id'}); // ->
//$sciezkaKategoriiObiekt = $client->doGetCategoryPath($session['session-handle-part'],76078);
$rozmiarKategoriiObiekt = count($sciezkaKategoriiObiekt);
//var_dump($rozmiarKategoriiObiekt);// $rozmiarKategoriiObiekt;
$sciezkaKategoriiTablica = $sciezkaKategoriiObiekt;
$calkowitaSciezka = '';
for($licznik=0; $licznik<$rozmiarKategoriiObiekt; $licznik++){
//echo 'tutaj ';
$calkowitaSciezka .= $sciezkaKategoriiTablica[$licznik]->{'cat-name'};
$calkowitaSciezka .= '->';
}
//if($sciezkaKategoriiTablica[$rozmiarKategoriiObiekt-1]->{'cat-is-leaf'}==1 && strcmp($sciezkaKategoriiTablica[0]->{'cat-name'},'Odzież, Obuwie, Dodatki')==0) {
//if($sciezkaKategoriiTablica[$rozmiarKategoriiObiekt-1]->{'cat-is-leaf'}==1 && $sciezkaKategoriiTablica[0]->{'cat-id'}==1454) {
if($sciezkaKategoriiTablica[$rozmiarKategoriiObiekt-1]->{'cat-is-leaf'}==1){// and (strpos($calkowitaSciezka, 'Odzież, Obuwie, Dodatki')!==false)){//$sciezkaKategoriiObiekt[0]->{'cat-id'}==1454) {
echo '<br/>Id kategorii: '.$kategoria->{'cat-id'}.', nazwa kategorii: '.$kategoria->{'cat-name'}.'<br/>';
echo 'ściezka: '.$calkowitaSciezka.'<br/><br/>';
if(strpos($calkowitaSciezka, 'Odzież, Obuwie, Dodatki')!==false)
echo 'rowne<br/>';
}
}
Problem z ostatnim ifem - te zakomentowane nie działają...
EDIT
if($sciezkaKategoriiTablica[$rozmiarKategoriiObiekt-1]->{'cat-is-leaf'}==1){// and (strpos($calkowitaSciezka, 'Odzież, Obuwie, Dodatki')!==false)){//$sciezkaKategoriiObiekt[0]->{'cat-id'}==1454) {
if(strpos($calkowitaSciezka, 'Odzież, Obuwie, Dodatki')!==false) {
echo '<br/>Id kategorii: '.$kategoria->{'cat-id'}.', nazwa kategorii: '.$kategoria->{'cat-name'}.'<br/>';
echo 'ściezka: '.$calkowitaSciezka.'<br/><br/>';
}
}
w tej wersji jednak też nie działa... -.- mimo, że w wersji wyżej wypisuje słowo 'rowne'... nie rozumiem nic z tego