Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]Tablica z PHP do JavaScript
Lirdoner
post
Post #1





Grupa: Zarejestrowani
Postów: 500
Pomógł: 1
Dołączył: 29.09.2009

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


Witam, przy pomocy ajaxa pobieram dane z bazy i zapisuje je do tablicy. Następnie przy zwracaniu wyniku mam
echo json_encode($tablica);
Niestety, nie mogę z tej tablicy już korzystać w javascript.
zmienna data do której jest zapisywana ta tablica zwraca mi wynik dobry:
[JAVASCRIPT] pobierz, plaintext
  1. [{"id":"1","name":"name1","war1":"10","war2":"20"}]
[JAVASCRIPT] pobierz, plaintext

Ale przy próbie odczytu jakiegokolwiek elementu zwracane jest mi "undefined"
Co z tym zrobić?

Ten post edytował Lirdoner 26.10.2012, 17:17:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


JSON to nie tablica tylko obiekt.

[JAVASCRIPT] pobierz, plaintext
  1. var a = {"a":"1"};
  2. var b = [{"a":"1"}];
  3.  
  4. alert(a.a);
  5. alert(b[0].a);
[JAVASCRIPT] pobierz, plaintext


Go to the top of the page
+Quote Post
jaslanin
post
Post #3





Grupa: Zarejestrowani
Postów: 511
Pomógł: 143
Dołączył: 13.03.2010
Skąd: Jasło

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


w JS ogólnie tablica asocjacyjna jest uznawana za obiekt, nie mniej jednak możesz do każdego obiektu w JS odwoływać się w taki sam sposób jak do tablicy

  1. var a = {"a":"1"};
  2. alert( a["a"] );


może podaj większy fragment kodu, wrzuć go na jsfiddle
Go to the top of the page
+Quote Post
sh3d2
post
Post #4





Grupa: Zarejestrowani
Postów: 34
Pomógł: 11
Dołączył: 10.06.2011
Skąd: świdnica

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


prawdopodobnie nie masz zdefiniowanego typu danych odpowiedzi,
jesli korzystasz z metody $.get() powinno to wygladac tak:
  1. $.get(url, function(data){
  2. console.log(data) // tu powinienes miec ladny obiekt
  3. }, 'json')


jesli korzystasz z metody $.ajax() powinienes miec zdefiniowany dataType: 'json'

pozdrawiam

edit: oczywiscie zakladam, ze korzystasz z biblioteki jquery

ew defaultowy typ danych z zadania to tzw "intelligent guess" - na podst naglowka, jaki idzie z odpowiedzia.
jesli razem z jsonem wyslesz naglowek
  1. header('Content-type: application/json');
typ danych powinien zostac wykryty automatycznie

Ten post edytował sh3d2 26.10.2012, 20:33:21
Go to the top of the page
+Quote Post
Lirdoner
post
Post #5





Grupa: Zarejestrowani
Postów: 500
Pomógł: 1
Dołączył: 29.09.2009

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


Rozwiązałem problem. Wystarczyło zamienić $.get na $getJSON
Dzięki za wszystkie odpowiedzi (IMG:style_emoticons/default/wink.gif)
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: 23.08.2025 - 16:51