X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> json, синхронный вызов
Ворон
Ворон
Topic Starter сообщение 5.4.2009, 21:20; Ответить: Ворон
Сообщение #1


    <script type="text/javascript">
    //<![CDATA[
        var from = 650;
        var to = 1200;
        alert('started');
        $.ajax({
                async: "false",
                type: 'GET',
                url: 'minmax.php',            
                dataType : "json",                    
                success : function (data, textStatus) {
                   var from = data.values[0].from;
                   to = data.values[0].to;
                   alert('in func');
                }
         });

         alert('outer');

    .............    

    // -->
    </script>


в хидере страницы есть такой код, работающий при обновлении страницы. несмотря на то, что вызов является Cинхронным порядок показа сообщений такой:
- started
- outer
- in func
хотя, по идее, "in func" должен идти вторым.
вопрос: как сделать вызов json Действительно синхронным?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
UncleM
UncleM
сообщение 7.4.2009, 20:59; Ответить: UncleM
Сообщение #2


Уберите ковычки в значении async.
$.ajax({
                async: false,
                type: 'GET',
                ...
Синхронный JSON? Вы, наверное, про AJAX. JSON - это способ записи объектов в JavaScript, а AJAX - технология отправки HTTP запросов и обработки ответов.


--------------------
Осторожно! Вы можете получить огромный заряд позитива!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ворон
Ворон
Topic Starter сообщение 8.4.2009, 1:01; Ответить: Ворон
Сообщение #3


Mike, ну это как посмотреть. формально вы правы, что, кстати, ни на йоту ни приближает меня к решению вопроса :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
UncleM
UncleM
сообщение 8.4.2009, 8:37; Ответить: UncleM
Сообщение #4


Я недоперепонял: вы мое "решение" попробовали или нет? Или пропустили ту часть, где я говорил про async и ошибку в коде?

Википедия знает все:
JSON (англ. JavaScript Object Notation) — текстовый формат обмена данными...


Заметьте, формат. А формат сам по себе ничего не делает. Поэтому ни синхронным ни асинхронным он быть не может.

И что значит "действительно синхронным"? Заставить браузер виснуть, пока не будет получен ответ на запрос?

Сначала попробуйте исправить свой jQuery код, возможно это и будет ответом.


--------------------
Осторожно! Вы можете получить огромный заряд позитива!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ворон
Ворон
Topic Starter сообщение 8.4.2009, 21:55; Ответить: Ворон
Сообщение #5


спасибо. работает
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ворон
Ворон
Topic Starter сообщение 14.4.2009, 23:55; Ответить: Ворон
Сообщение #6


ниже приведу кусок кода. обращается к базе, вычитывает данные на русском языке и выводит в формате json

[php]<?php
header("Cache-Control: no-cache");
header('Content-Type: text/html; charset=UTF-8');

mysql_connect('localhost', 'root', '');
mysql_select_db('dev');
mysql_query("set names 'utf8'");

$voc = mysql_query("select * from js_test");
$location = '';
while ($item = mysql_fetch_object($voc)){
echo $item->name; // выводит нормально нормальный русский текст
$location[] = array('name' => $item->name, 'tid' => $item->id);
}
mysql_close();

echo json_encode(
array('location' => $location)
);

?>[/php]код простой как грабли. но, если при при вызове эха в цикле он выводит строки на русском языке нормально, то при попытке вывести массив, перелитый в формат json не выводит ничего. единственной логичной причиной этого для меня является то, что данные выдаются не в UTF8 (потому что с ним json не работает). но такого быть не может, потому что при соединении выполняется "set names 'utf8'" (если поставить другую, то получим абракадабру, т.е. данные и в базе лежат в UTF8). вопрос - как такое может быть, что массив неверно переливается в json? где ошибка, куда копать?

зы.в дополнении могу сказать, что работа с цифрами (там где не важна кодировка) идет нормально.
ззы. на локалке все работает "на ура", на хосте - с русскими символами не пашет
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 15.4.2009, 10:27; Ответить: Webmaster_hb
Сообщение #7


может проблема в самом массиве location ?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ворон
Ворон
Topic Starter сообщение 15.4.2009, 12:46; Ответить: Ворон
Сообщение #8


нет, тогда бы и на локалке не работало.
впрочем, я переделал все по-другому.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыCrakRevenue "Декабрьский Вызов!"
0 joncrakrevenue 996 30.11.2021, 18:54
автор: joncrakrevenue
Открытая тема (нет новых ответов) Zel.Biz - CPA/CPI партнерка и Push-сеть (XML JSON feed)
0 zelads1 869 27.12.2020, 17:05
автор: zelads1
Открытая тема (нет новых ответов) Zel.Biz - Push/CPA/CPI рекламная сеть (XML JSON feed)
0 Zelads 1672 14.10.2020, 13:22
автор: Zelads
Открытая тема (нет новых ответов) Вызов функциии
помогите с синтаксисом
3 Вячеслав 2018 25.9.2009, 0:57
автор: Вячеслав


 



RSS Текстовая версия Сейчас: 29.3.2024, 3:42
Дизайн