|
Вывод с БД в таблицу [EXT JS]
Требуется осуществить вывод информации с БД (имя wp, одна таблица journal, три поля id surname name) в таблицу, grid как я понимаю. Я думаю кто то да сталкивался с таким делом - можете дать рабочий пример? Или обьяснить кому не тяжело... Нужно наверное взять данные json`ном с бд - передать в стор а потом в грид? Не могу никак все в кучу собрать... Жду помощи. За ранее благодарен Всем! :cray:
|
есть json данные взятые с бд...
есть json данные взятые с бд...
[{"id":1,"surname":"фывфыв","name":"фывф ввв"},{"id":2,"surname":"фывыфаппре ","n ame":"кнокно"},{"id":3,"surname":"Putin","na me":"Vladimir"},{"id":4,"surname":"M edvedev","name":"Dmitriy"},{"id":5,"surname":"Yanu kovich","name":"Viktor"}] Теперь надо создать хранилище? |
Спасибо с этим я тоже разобрался... Сейчас вот пытаюсь понять - этож
data:{'items':[.... Вместо этого надо подключить данные от сюда json_encode($rows); ? |
нафига, хотя может быть можно и так, только вряд ли нужно :)
store.load() - обычно достаточно :) ======================== Опять же пример из документации. Ext.define('userModel', { extend: 'Ext.data.Model', fields: ['name', 'surname'] }); var store = Ext.create('Ext.data.JsonStore', { model: 'userModel', proxy: { type: 'ajax', url: 'users.json',//адрес откуда берём инфу reader: { type: 'json', root: 'users' } } }); store.load();// грузим инфу с сервера ==================================== json файл приведите к виду. { success: true, users: [ {"id":1,"surname":"фывфыв","name":"фывф� �ввв"}, {"id":2,"surname":"фывыфаппре� �","n ame":"кнокно"},{"id":3,"surname":"Putin","na me":"Vladimir"}, {"id":4,"surname":"M edvedev","name":"Dmitriy"},{"id":5,"surname":"Yanu kovich","name":"Viktor"} ] } фывыфаппре� � - что за кракозябры ? |
Спасибо. Делаю. Кракозябры - там мое имя было и моей подруги (для конспирации) =)
|
Конспирируетесь говорите :)
Видимо у вас много подруг и половина из них на этом форуме :D |
Правильно я думаю?
Я вообще с программированием (php) дружу... А сегодня вот начальник (я стажер) сказал за день все освоить [extjs] (не, не все - а типо ознакомиться и показать результат)... я над простым выводом инфы с бд сижу уже 4 часа.. а даже до грида не дошел(
Так должно быть как то? --- ---------- Файл show.js ---------- Смысл: Задать модель, создать хранилище, а потом уже в грид и вывод? типо... Ext.define('showModel', { extend: 'Ext.data.Model', fields: ['id','surname', 'name', {name:'size', type: 'float'}, {name:'lastmod', type:'date', dateFormat:'timestamp'}] }); var store = Ext.create('Ext.data.JsonStore', { model: 'showModel', proxy: { type: 'ajax', url: 'get.json',//адрес откуда берём инфу reader: { type: 'json', root: 'images' (тут немного не понятно) } } }); store.load();// грузим инфу с сервера Вот файл get.php (он уже не нужен?) надо через *.json делать? <?php $mysql = mysql_connect('localhost', 'roor', '') or die("Could not connect: " . mysql_error()); mysql_select_db('wp'); $query = 'select * from journal'; $res = mysql_query($query); while ($row = mysql_fetch_assoc($res)) { for ($i=0; $i < mysql_num_fields($res); $i++) { $info = mysql_fetch_field($res, $i); $type = $info->type; if ($type == 'real') $row[$info->name] = doubleval($row[$info->name]); if ($type == 'int') $row[$info->name] = intval($row[$info->name]); } $rows[] = $row; } echo json_encode($rows); mysql_close($mysql); ?> |
не не! Я тут первый из моих друзей)
|
Цитата:
Цитата:
|
<!DOCTYPE html> <html> <head> <title>demo</title> <script src='http://dev.sencha.com/deploy/ext-4.0.7-gpl/ext-all.js'></script> <link rel="stylesheet" href="http://dev.sencha.com/deploy/ext-4.0.7-gpl/resources/css/ext-all.css"> <script> Ext.onReady(function() { var gc = [ { dataIndex: 'id', hidden: true }, { dataIndex: 'name', header: 'Имя' }, { dataIndex: 'surname', header: 'Фамилия', flex: 1 } ], sf = []; for(var i=0; i<gc.length; i++) { sf.push(gc[i].dataIndex); } Ext.define('User', { extend: 'Ext.data.Model', fields: sf }); var store = Ext.create('Ext.data.JsonStore', { model: 'User', data: [{"id":1,"surname":"фывфыв","name":"фывф� �ввв"},{"id":2,"surname":"фывыфаппре� �","name":"кнокно"},{"id":3,"surname":"Putin","name":"Vladimir"},{"id":4,"surname":"M edvedev","name":"Dmitriy"},{"id":5,"surname":"Yanu kovich","name":"Viktor"}] }); Ext.create('Ext.grid.Panel', { columns: gc, renderTo: Ext.getBody(), store: store }); }); </script> </head> <body></body> </html> Соответственно вместо статического указания данных вам нужно использовать proxy, примерно так: proxy: { type: 'ajax', url: 'get.php', reader: { type: 'json' } } |
Часовой пояс GMT +3, время: 20:10. |
|