Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Загрузка данных из MySQL и их отображение в Grid (ExtJS) / 9 сообщений из 9, страница 1 из 1
26.03.2013, 22:29
    #38199499
RomaT24
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Проблема стандартная для начинающих в ExtJS и PHP сразу) Нужно загрузить и отобразить данные из MySQL в Grid. Вроде, прекрасно понял, как это делается, но выводит почему-то только каркас таблицы без данных. Не знаю, в чем проблема.
Файл index.html:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<html>
<head>
    <title>ExtJS Example</title>
    
    <link rel="stylesheet" type="text/css" href="resources/css/ext-all.css">
    <script type="text/javascript" src="ext-all-debug.js"></script>
	 <script>
      Ext.Loader.setConfig({
        enabled: true
      });
    </script>
    <script type="text/javascript" src="f_app1.js"></script>
</head>
<body></body>
</html>



файл f_app.js:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
Ext.application({
    name: 'Ext_Example',
    launch: function() {

Ext.define('Cust', {
    extend: 'Ext.data.Model',
	idProperty: 'id',
    fields: [
        {name: 'id', type: 'int'},
        {name: 'fname', type: 'string'},
        {name: 'sname', type: 'string'}
    ]
});

				
var store = new Ext.data.JsonStore({
  autoLoad: true,
  autoSync: true,
  model: 'Cust',
  proxy: {
        type: 'ajax',
        url: 'f_DB.php',
        reader: {
            type: 'json'
        }
    },
})

Ext.create('Ext.grid.Panel', {
        title: 'Пользователи',
        height: 250,
        width: 500,
        store: store,
        columns: [{
           header:'ID',         
           dataIndex:'id'       
      },{
            header:'Имя',        
            dataIndex:'fname'
        }, {
            header:'Фамилия',         
            dataIndex:'sname'
        }],
        renderTo: Ext.getBody()
    });				

}
});	



Файл f_DB.php:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
<?php
$user="Roman";
$password="123";
$db="Roman";
$host="localhost";
$link= mysql_connect($host, $user, $password) or die("MySQL сервер недоступен!".mysql_error());
mysql_select_db($db,$link) or die("Нет соединения с БД".mysql_error());

$query = "select * from customer";
$result = mysql_query($query, $link);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{
$data_c[] = array(
'id' => $row['id'],
'fname' => $row['fname'],
'sname' => $row['sname'],
);
}
 
$myData = array('myInventory' => $data_c);
$d = json_encode($myData);
echo $d;
mysql_close($link);
?>



Подскажите, что неправильно или чего не хватает =)
...
Рейтинг: 0 / 0
26.03.2013, 23:21
    #38199544
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
берем firebug
идем на закладку Net
и смотрим - какие запросы клиент шлет серверу и что в ответ от него получает
...
Рейтинг: 0 / 0
27.03.2013, 18:39
    #38201102
RomaT24
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Паганель, поставил, посмотрел. В js и html в ответах сам код скриптов, всё нормально. В php файле ответ на запрос выглядит так:

{"myInventory":[{"id":"1","fname":"Ivan","sname":"Ivanov"},{"id":"2","fname":"Sergei ","sname":"Sergeev"},{"id":"3","fname":"Vladimir","sname":"Vladimirov"}]}

То есть данные из sql он берет, строку формирует, но после непродолжительного "Loading.." при загрузке таблицы в итоге ничего не отображает. В чём может быть проблема?
...
Рейтинг: 0 / 0
27.03.2013, 18:45
    #38201114
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
RomaT24В php файле ответ на запрос выглядит такА в файрбаге он как выглядит?
...
Рейтинг: 0 / 0
27.03.2013, 19:01
    #38201146
RomaT24
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Паганель, точно так же.
...
Рейтинг: 0 / 0
27.03.2013, 23:32
    #38201406
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
var  store =new  Ext.data.JsonStore({
    autoLoad:true,
    autoSync:true,
    model:'Cust',
    proxy: {
          type:'ajax',
          url:'f_DB.php',
          reader: {
              type:'json',
             root:"myInventory"
          }
      },
})


???
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
28.03.2013, 00:51
    #38201439
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
> Подскажите, что неправильно или чего не хватает =)
P.S. BTW, было бы неплохо еще и success && total в выхлопе отдавать...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
29.03.2013, 18:30
    #38204828
Eugene22
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Ex_Soft, по идее у тебя вроде все правильно, если php-скрипт правильно формирует данные, то проблема в организации клиентской части - при определении хранилища strore надо указать root:"myInventory" в ридере, как ты собственно и написал выше, так как у тебя для данных корневой узел myInventory. Если не получится,в качестве образца можешь использовать следующий пример - Ext.grid.Panel и отображение данных
...
Рейтинг: 0 / 0
29.03.2013, 18:43
    #38204857
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузка данных из MySQL и их отображение в Grid (ExtJS)
Eugene22, Вы наверное к автору обратиться хотели :)
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Загрузка данных из MySQL и их отображение в Grid (ExtJS) / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]