[PHP][inne]Błąd w połączeniu API |
[PHP][inne]Błąd w połączeniu API |
5.06.2019, 12:03:24
Post
#1
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Mam dość spory problem, prawdopodobnie w pętli, którego nie umiem rozwiązać. Otóż chciałbym połączyć się do API dla każdego gracza w klanie z osobna, więc robię takie coś:
I wywołuję wynik ponownie w pętli:
I problem pojawia się po wywołaniu, bo jeżeli użyję "echo $data["name"];" w pętli, to otrzymuję nick tego samego gracza * ilość graczy w klanie (gdy użyję bez pętli to otrzymuję ten nick tylko raz) i w każdy przypadku jest to nick ostatniego gracza w klanie, czyli podejrzewam, dane z ostatniego połączenia, a gdy użyję poprawnie "$datan["name"];" to otrzymuję takie cudo: Warning: Illegal string offset 'name' in /var/www/html/klan.php on line 162 # Warning: Illegal string offset 'name' in /var/www/html/klan.php on line 162 P Warning: Illegal string offset 'name' in /var/www/html/klan.php on line 162 mNowa Era Notice: Undefined index: name in /var/www/html/klan.php on line 162 Notice: Undefined index: name in /var/www/html/klan.php on line 162 Notice: Undefined index: name in /var/www/html/klan.php on line 162 Notice: Undefined index: name in /var/www/html/klan.php on line 162 Linia 162 to linia gdzie używam "echo $datan["name"];" Jakieś pomysły jak mógłbym to rozwiązać/naprawić? //Edited Ten post edytował Nidan23 5.06.2019, 12:05:14 |
|
|
5.06.2019, 12:05:45
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
var_dump($data);
ewentualnie var_dump($datan); w petli a wszystko bedzie jasne. Na przyszlosc sam sprawdzaj co zawieraja dane na ktorych pracujesz -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
5.06.2019, 12:12:53
Post
#3
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Niedokońca(?) rozumiem, co to miało dać, bo widzę, że poprawnie wywołałem dane, ponieważ po zastosowaniu "var_dump($data);" fragment tego co chcę wywołać wygląda tak:
A więc tak jak się spodziewałem i nie rozumiem co to ma dać, możesz rozjaśnić? PS. Po wywołaniu w pętli dostaję to samo tylko pomnożone razy ilość graczy w klanie. |
|
|
5.06.2019, 12:18:31
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Wykonaj sobie kod
Jak widzisz dane nie są tym co mówisz że są. -------------------- |
|
|
5.06.2019, 12:18:55
Post
#5
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
I także dotyczy to tylko ostatniego gracza w klanie/połączenia
|
|
|
5.06.2019, 12:18:57
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
Pokaz dokladnie co zwraca ten va-dump nam bo mam nieodparte wrazenie ze zle odczytujesz co dostajesz
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
5.06.2019, 12:27:25
Post
#7
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Dostaję to co dostawałem tam:
Warning: Illegal string offset 'name' in /var/www/html/klan.php on line 164 a---ghijk No bo nie jest zdefiniowane $x["name"], tylko $x. Tylko, że tutaj schemat pliku Json wygląda tak:
W gdy wywołuję te same dane, ale w stosunku do jednego gracza, bądź klanu, to to działa, ponieważ inne podstrony śmigają. // Dokladnie wszystko? Dostaję dokładnie to samo co tutaj wstawiłem, tylko jeszcze więcej (uciąłem, żeby nie śmiecić) + uzupełnione o dane gracza Dostaję takie coś i jeszcze więcej, ale nie mieści się w poście
Ten post edytował Nidan23 5.06.2019, 12:28:12 |
|
|
5.06.2019, 12:42:44
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Dostaję to co dostawałem tam: Warning: Illegal string offset 'name' in /var/www/html/klan.php on line 164 a---ghijk Co daje ci odpowiedź że na którymś etapie iteracji masz do czynienia ze stringiem a nie tablicą. -------------------- |
|
|
5.06.2019, 12:49:12
Post
#9
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Co daje ci odpowiedź że na którymś etapie iteracji masz do czynienia ze stringiem a nie tablicą. Co jednak nie daje odpowiedzi, jak uzyskać dane o każdym z graczy, a nie o jednym W przypadku zastosowania takiego czegoś: Otrzymuje poprawny zwrot informacji, a połączenie jest inne, lecz jedyną zmianą jest brak pętli oraz konkretny tag, czyli:
|
|
|
5.06.2019, 13:12:49
Post
#10
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
To dodaj sobie w pętli jakieś logowanie i zobaczysz co jest nie tak
-------------------- |
|
|
10.06.2019, 15:09:31
Post
#11
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
To dodaj sobie w pętli jakieś logowanie i zobaczysz co jest nie tak Dla 5/32 dostaję zwrot, że jest a dla pozostałych 27, że nie jest, jakieś pomysły? Bo to chyba trochę dziwne, skoro łączę się w petli, dla każdego tak samo, heh |
|
|
10.06.2019, 15:12:17
Post
#12
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
Napisano ci bys zapisal zwrotke do logow i sprawdzil co jest z nia nie tak. Zrobiles to? Tam bedziesz mial prawdopodobnie komunikat czemu jest zle
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
10.06.2019, 16:38:10
Post
#13
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Napisano ci bys zapisal zwrotke do logow i sprawdzil co jest z nia nie tak. Zrobiles to? Tam bedziesz mial prawdopodobnie komunikat czemu jest zle Ale logu jakiego, httpd? Skąd domysł,że korzystam z VPS'a, bo inaczej przecież nie ma dostępu do logów, przynajmniej ja nie umiem, google milczy jak to zrobić w php, jedyne co mówi, to to jak zapisać coś w pliku tekstowym, jeśli to nazywacie logiem, to poproszę po polsku... I wiersz czego? Bo rozsądnych rozwiązań znalazłem tylko to:
|
|
|
10.06.2019, 16:40:55
Post
#14
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
Cytat Skąd domysł,że korzystam z VPS'a, Nas oskarazasz o jakies domysly a sam je robisz... Do jakiegokolwiek logu, moze to byc zwykly plik alamakota.txt. Jaki wiersz? Odpowiedz jaka dostajesz z CURL
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
10.06.2019, 17:53:22
Post
#15
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
Nas oskarazasz o jakies domysly a sam je robisz... Do jakiegokolwiek logu, moze to byc zwykly plik alamakota.txt. Jaki wiersz? Odpowiedz jaka dostajesz z CURL Jak napisał tak cytuje, poza tym problem z głowy, wrzuciłem zapytanie do bazy, więc dla każdego zapisuje rekordy w bazie i zwyczajnie będę jest "wybierać" z bazy. Jednak mam malutki problem, czy da się jakoś zastąpić "class" w php? Bo mam takie coś
I gdy wrzucam to w pętle to wiadomo, nie działa, bo nie można zdefiniować kilkukrotnie tej samej klasy, więc wyrzucam poza klasę, ale wtedy nie wprowadza pełnych rekordów, bo to co jest w pliku dla pojedyńczego gracza nie ma w pliku dla klanu i odwrotnie,i czy da się to jakkolwiek zastąpić? EDIT. Zapytanie do pętli. |
|
|
11.06.2019, 09:33:21
Post
#16
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
Cytat Jak napisał tak cytuje No nie, my ci pisalismu o LOGACH a ty zas zaczales "cytowac" ze ci o VPS mowimy. Jak masz zwidy to pretensje do siebie a nam nie wkladaj w usta slow, ktorych nie powiedzielismy Dalej w tym temacie strach pisac bo czort wie co tam nam jeszcze wcisniesz -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
11.06.2019, 10:51:06
Post
#17
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Pokaż człowiecze że kod...
|
|
|
11.06.2019, 14:29:39
Post
#18
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
No nie, my ci pisalismu o LOGACH a ty zas zaczales "cytowac" ze ci o VPS mowimy. Jak masz zwidy to pretensje do siebie a nam nie wkladaj w usta slow, ktorych nie powiedzielismy Dalej w tym temacie strach pisac bo czort wie co tam nam jeszcze wcisniesz Każecie mi wpisać wiersz do logu, ale jestem początkujący, dlatego piszę tematy w przedszkolu, i z tego ja wiem, to oryginalnie strona/aplikacja webowa nie ma logów, tylko sam serwer Apache ma, więc Logicznie, próbując się domyślić o co wam chodzi, bo tak jest w większości przypadków (podejrzewam, że w obie strony), to zakładam, że wy założyliście, że mam vps'a czy dedykowanego, bo go mam, więc sama myśl była jeszcze krok bliżej mnie, niż gdybym go nie miał. To jest proste, logiczne, niczego wam do ust nie wkładam, gustuję w kobietach, nie mam pretensji, jeżeli tak to odbieracie to serio? Ile macie lat? Tyle co ja, żeby myśleć, że cały świat jest nastawiony przeciwko wam? I nie diaboł wie, tylko ładnie proszę o odpowiedź, czy da się jakoś zastąpić "class" w php. Jeżeli nie chcecie, żebym pisał w taki a nie inny sposób, to piszcie jasno i wyraźnie co mam zrobić, ale czego mogę użyć, bo wasze wypowiedzi można interpretować na tyle różnych sposobów, a informatyka jest podobno ścisła.... BTW. Czym ma się niby różnić zapisanie wierszu od logu od wywołania czegoś (np. tej zmiennej) przez "echo"? |
|
|
11.06.2019, 14:48:58
Post
#19
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
No i dobrze chlopie. Kazdy ma prawo byc poczatkujacy. Ale nie pisz, ze my cos zakladamy kiedy to ty zakladasz i ze nas doslownie cytujesz w momencie gdy mijasz sie z prawda. O to mi chodzilo. Juz , wporzadku? Melaska wypita? Mozemy isc dalej?
Cytat Czym ma się niby różnić zapisanie wierszu od logu od wywołania czegoś (np. tej zmiennej) przez "echo"? Mniej wiecej tym samym co wlozenie jablka do koszyka a postawieniu go na taborecie. Rob jak ci wygodniej. Zaproponowano ci koszyk. Skoro wygodniej ci sie przeglada jablko na taborecie to stawiaj na taboret
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
11.06.2019, 22:36:48
Post
#20
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 2 Dołączył: 26.04.2019 Ostrzeżenie: (10%) |
No i dobrze chlopie. Kazdy ma prawo byc poczatkujacy. Ale nie pisz, ze my cos zakladamy kiedy to ty zakladasz i ze nas doslownie cytujesz w momencie gdy mijasz sie z prawda. O to mi chodzilo. Juz , wporzadku? Melaska wypita? Mozemy isc dalej? Mniej wiecej tym samym co wlozenie jablka do koszyka a postawieniu go na taborecie. Rob jak ci wygodniej. Zaproponowano ci koszyk. Skoro wygodniej ci sie przeglada jablko na taborecie to stawiaj na taboret Wypita, możemy iść dalej. I dzięki za odpowiedź Temat zamknięty, wszystko działa jak powinno. |
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 00:51 |