<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Передача массива из php в js
29.05.2013 21:27:19 Передача массива из php в js Сообщение #1
jeniat

jeniat

Новичок

Новичок

Дата регистрации:
29.05.2013 20:52:10

Сообщений: 1

При передаче запроса на сервер использую объект xmlhttp как описано тут: http://myrusakov.ru/javascript-post.html.

На сервере использую
$result_set = mysql_query("SELECT ...LIMIT 0 , 1;"
or die("Invalid query: " . mysql_error());
while ($row = mysql_fetch_array($result_set, MYSQL_ASSOC))
{
echo(json_encode($row));
}


Потом когда все обработалось на сервере и приходит ответ на клиент, то код такой:
var result = xmlhttp.responseText;
alert(result);

В результате получается вот такое:
{"class_id":"7","class_name":"\u041c\u043e\u0442\u043e\u0446\u0438\u043a\u043b\u044b \u043c\u043e\u0442\u043e\u0440\u043e\u043b\u043b\u0435\u0440\u044b","class_name_short":"\u041c\u043e\u0442\u043e-\u043c\u043e\u0442\u043e","visible":"1","amount_tickets":"15"}

Если на клиенте поменять код на вот такой:
var result = xmlhttp.responseText;
alert(result.class_name);

То получим undefined.

Как же правильно передать массив с сервера на клиент?
Желательно найти решение без использования jQuery.
Заранее спасибо.

P.S. И на сервере и на клиенте используется utf-8.

P.S.S. Вопрос отпал. Решение найдено.
Надо было использовать
var result = JSON.parse(xmlhttp.responseText);
вместо
var result = xmlhttp.responseText;
Профиль Ответить
30.05.2013 04:17:54 Передача массива из php в js Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

{"class_id":"7","class_name":"\u041c\u043e\u0442\u043e\u0446\u0438\u043a\u043b\u044b \u043c\u043e\u0442\u043e\u0440\u043e\u043b\u043b\u0435\u0440\u044b","class_name_short":"\u041c\u043e\u0442\u043e-\u043c\u043e\u0442\u043e","visible":"1","amount_tickets":"15"} - вот это абсолютно правильный результат, используйте и всё нормально будет, главное, и страницы должны быть в UTF-8.
Профиль Ответить