Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Array и JSON
 
 автор: Ninjak   (27.01.2010 в 19:54)   письмо автору
 
 

Есть PHP код

        $data = array
        (
            111 => array
            (
                'id' => 11,
                'bid' => 222,
                'title' => 3333,
                'short' => 44444,
            ),
            223 => array
            (
                'id' => 22,
                'bid' => 2222,
                'title' => 33333,
                'short' => 444444,
            ),
        );
        
        echo json_encode($data);


Ответ приходит естественно такой
{"111":{"id":11,"bid":222,"title":3333,"short":44444},"223":{"id":22,"bid":2222,"title":33333,"short":444444}}


Вопрос в следующем:
Я хочу сделать вывод новостей, но когда прогоняю в цикле, получаю значения только из массива первого уровня, а второй уровень он почему-то видит как стринг.

Как это вообще делается?

  Ответить  
 
 автор: sl1p   (27.01.2010 в 19:56)   письмо автору
 
   для: Ninjak   (27.01.2010 в 19:54)
 

var arr  = eval("("+ x +")");

// x = ответ сервера

  Ответить  
 
 автор: Ninjak   (27.01.2010 в 20:05)   письмо автору
 
   для: sl1p   (27.01.2010 в 19:56)
 

Всё, разобрался, понял в чём была проблема ;)

Итог:

function(data)
{
    data = eval('('+ data +')');

    for ( var i in data)
    {
        alert(data[i].id);
    }
}

  Ответить  
 
 автор: Волки   (27.01.2010 в 20:16)   письмо автору
 
   для: Ninjak   (27.01.2010 в 20:05)
 

для $.post есть еще и четветый параметр, который, например, может быть "json" - тогда в callback попадет уже json-объект, а не текстовая строка

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования