Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.12.2008, 22:58
Интересующийся
Отправить личное сообщение для Blondink0 Посмотреть профиль Найти все сообщения от Blondink0
 
Регистрация: 14.12.2008
Сообщений: 13

GridWindow, проблемы с массивом ...
Здравствуйте!
У меня возникла следующая проблема, имеется gridwindow, берет данные для вывода в колонки из массива Ext.grid.dummyData, пример кода:
Ext.grid.dummyData = [
[1, 2, 3 ,4],
[a, s, d, f],
[q, w, e, r]
...
];

Как можно сделать, чтоб данные брались из базы данных MySQL ...?
Например, у нас есть следующие колонки в gridwindow: страна, город, улица, кол-во жителей и в mysql есть следующие данные: country, sity, street, sum ...
И пополняется база данных за счет ввода данных пользователем, то есть кол-во записей всегда меняется, и не известно ... Реально ли вообще сделать, чтоб данные из mysql отображались в колонках gridwindow ...?
Заранее спасибо за все ответы.
Ответить с цитированием
  #2 (permalink)  
Старый 14.12.2008, 23:06
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от Blondink0
Как можно сделать, чтоб данные брались из базы данных MySQL ...?
с помощью AJAX получаете с сервера необходимые данные из БД
для этого у вас на сервере должен быть скрипт, который делает обращение к базе, и возвращает результат в удобном для JS виде(например JSON)
Ответить с цитированием
  #3 (permalink)  
Старый 14.12.2008, 23:30
Интересующийся
Отправить личное сообщение для Blondink0 Посмотреть профиль Найти все сообщения от Blondink0
 
Регистрация: 14.12.2008
Сообщений: 13

Огромнейшее спасибо! Это то, что нужно.
Только в связи с этим возникло еще пару вопросов :*
Сильно ли подобный скрипт и обработка\получение данных будут нагружать сервер?
И вот в Мануале был приведен пример
$test = array("111","222","333");
echo json_encode($test);

Я с MySql на "вы" поэтому не знаю как лучше сделать ... То есть у меня должен получиться примерно следующий шаблон?
$a = SELECT country, COUNT(*) AS total FROM statistics
....
while ($b = $db->get_array($result)) ....
...
json_encode(<?=$b["total"]?>)

Или как-то по-другому?
Так же возникла проблема с передачей данных js скрипту ... Использую шаблон desktop из пакета extjs 2.2 , gridWindow находится внутри файла sample.js ... но чтоб передавать значения переменных, нужно сделать расширение файла *.php , но как тогда его вставлять в основной файл.html ...? если include "./sample.php"; то меню исчезает и скрипт перестает работать ... подскажите как лучше сделать ...
Заранее всем огромное спасибо за ответы!

Последний раз редактировалось Blondink0, 15.12.2008 в 00:44.
Ответить с цитированием
  #4 (permalink)  
Старый 15.12.2008, 01:43
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

шаблон ваш синтаксически верен
точнее можно сказать только после полного выяснения что у вас есть в базе, и что вам надо извлечь оттуда
ну, я не буду пошагово все выяснять, сами разберетесь
ваш шаблон надо вставить ьв отедльный файл.
то есть у вас дорлжно быть два файла
один с js
один с ПХП(мускул там же)
и из первого идет обращение на второй
если не так понял, извините
у меня выходной, и я все еще пью
сессия, мать ее
Ответить с цитированием
  #5 (permalink)  
Старый 15.12.2008, 18:03
Интересующийся
Отправить личное сообщение для Blondink0 Посмотреть профиль Найти все сообщения от Blondink0
 
Регистрация: 14.12.2008
Сообщений: 13

Вот в том и вопрос, как сделать обращение из js-файла ... Получается чтоб php работало внутри js-кода, например, использую конструкцию
var js = '<?=$param; ?>';
то расширение файла должно быть php ... или не так? потому что, если я подставляю такую конструкцию в изначальный файл, с расширением js, то подобная конструкция не работает ... А если я меняю расширение js-файла на *.php то скрипт перестает работать ... Даже если все переписывать как
Код:
<?
echo "js line 1";
echo "js line 2";
....
echo "js line 99";
....
То все равно скрипт не работает ...
Подскажите как можно объеденить файлы и сделать обращение из файла js ...?
Еще раз спасибо)
PS: Удачно сдать.

Последний раз редактировалось Blondink0, 15.12.2008 в 18:08.
Ответить с цитированием
  #6 (permalink)  
Старый 15.12.2008, 18:22
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

AJAX
прочитайте для начала этот цикл статей, если еще этого не сделали.
а в двух словах, Ajax работет так:
у вас есть HTML-страничка с js-кодом(неважно подключаемым или нет)
там все довольно статично
расширения .htm .html .php для страницы и .js - для подключаемого JS-кода
помимо этого у вас должна быть должна быть страничка с генерируемыми данными. у нее расширение должно быть .php
так, вот скрипт из первой страницы делает запрос на вторую страницу, и получает данные из нее в переменную напрмер.
после чего обрабатывает эту переменную как вам угодно, например измняет HTML_код страницы
иначе не знаю как объяснить
Ответить с цитированием
  #7 (permalink)  
Старый 15.12.2008, 18:34
Интересующийся
Отправить личное сообщение для Blondink0 Посмотреть профиль Найти все сообщения от Blondink0
 
Регистрация: 14.12.2008
Сообщений: 13

Спасибо за ссылку, все прочитаю ... Мне просто был интересен сам пример запроса из стр #1 к стр #2 ... но думаю прочитаю - разберусь. Спасибо еще раз.
Ответить с цитированием
  #8 (permalink)  
Старый 15.12.2008, 18:44
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

если будут вопросы после прочтения обращайтесь
Ответить с цитированием
  #9 (permalink)  
Старый 15.12.2008, 21:20
Интересующийся
Отправить личное сообщение для Blondink0 Посмотреть профиль Найти все сообщения от Blondink0
 
Регистрация: 14.12.2008
Сообщений: 13

Вопросы к сожалению возникли ...
Попробовала сделать следующее:
файл test.php
Внутри него примерно следующий код:
Код:
<?
...
$a = ...;
...
$res = json_encode("$a");
echo $res;
?>
Потом файл index.php со следующим содержанием
Код:
<html>
<head>
...
<script type="text/javasctipt" src="sample.js"></script>
...
</head>
...
</html>
И файл sample.js, со следующим кодом:
Код:
...
//код extJs и тп
...
var xmlhttp = getXmlHttp()
xmlhttp.open('GET', 'test.php', false);
xmlhttp.send(null);
...
Ext.grid.dummyData = [
xmlhttp.responseText
];
...
Но все-равно не работает ...
Возможно ли как-то содержание файла с расширением js перенести в файл с расширением php ...?
Возможно я что-то не так делаю ...
Если не сложно, не могли бы вы поделиться готовым примером ... так как не получается найти примера подобного ...

Последний раз редактировалось Blondink0, 15.12.2008 в 21:23.
Ответить с цитированием
  #10 (permalink)  
Старый 15.12.2008, 21:35
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

там в одной из статей написано как пользоватся JSON-ом
вот цитата
Цитата:
Чтобы десериализовать объект, клиент просто пропускает текст через встроенный парсер, добавив скобкиvar reports = eval( '('+data+')' )
таким образом вам надо писать не
Код:
Ext.grid.dummyData = [
xmlhttp.responseText
];
а
Код:
Ext.grid.dummyData = 
eval( '('+xmlhttp.responseText+')' );
а дальше уже обрабатываете переменную как вам угодно
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с меню на JS SeeD Общие вопросы Javascript 5 21.11.2008 19:44
проблемы с Post Phoenix (X)HTML/CSS 11 31.10.2008 04:25
Проблемы с парсингом чисел GodHead Общие вопросы Javascript 3 20.09.2008 20:13
Проблемы с методом POST demoniqus Общие вопросы Javascript 16 25.07.2008 18:09
проблемы с стилями наверное ropil Общие вопросы Javascript 1 22.05.2008 18:38