JQ и переменная PHP

Главные вкладки

Аватар пользователя Агния Агния 6 сентября 2011 в 20:02

Мне нужно с помощью JQ вывести на экран после нажатия сабмита значение переменной, которое формируется на пхп. Вопрос соотвественно - как вытаскивать значение $data из пхп без перезагрузки страницы?

Комментарии

Аватар пользователя Orion76 Orion76 6 сентября 2011 в 20:47

Регестрируете во вспомогательном модуле Друпал элемент меню через hook_menu... например : give-me-data
в параметре элемента меню $page callback указываете имя функции, которая будет возвращать нужные вам данные ява-скрипту на странице, данные отправляются функцией drupal_json.

ява-скриптом отправляете запрос друпалу с параметром q=give-me-data
и ловите ответ...

как-то так..

Аватар пользователя Orion76 Orion76 6 сентября 2011 в 23:35

на api.drupal.ru в верхней правой части страницы очень удобный поиск, сам регулярно им пользуюсь..-)))
на api.drupal.ORG точно такойже, только на английском

Аватар пользователя Агния Агния 6 сентября 2011 в 23:39

"orion76" wrote:
на api.drupal.ru в верхней правой части страницы очень удобный поиск, сам регулярно им пользуюсь..-)))
на api.drupal.ORG точно такойже, только на английском

Да я уже и там и там посмотрела)), но все равно не поняла как это решать, ищу в интернете пример подобный моей задаче, но не могу найти...

Аватар пользователя Orion76 Orion76 7 сентября 2011 в 0:26

есть примеры кода для частоиспользуемых опреаций.
скачать можно сдесь:
http://drupal.org/project/examples

кстати внутренности drupal_json() знать не обязательно-))
она просто отдает скрипту браузерf данные-переменную в формате json
т.е. в функции подготовливающей данный для оправки скрипту вместо
return $data;
пишите:
drupal_json($data);

в ява-скрипте отправляете аякс запрос друпалу

 $.ajax({
   type: "GET",
   dataType: 'json' // тип данных, ожидаемых в ответе сервера
   url: "route_path",//зарегистрированный путь в hook_menu
   data: "name=John&location=Boston",//отправляемые друпалу данные, если необходимо, будут доступны как $_GET['name'] $_GET['location']
   success: function(data){ // выполниться, если ответ получен успешно, в data принятые от друпала данные, если друпал отправлял строку - это строка, если массив - это массив и т.д.
     alert( "Data Saved: " + data );
   }
 });