Передача данных клиенту
Здравствуйте.
Я пытаюсь написать приложение, которое из файла php, передает данные в json-формате, js(клиенту), с тем чтобы последний распределил эти данные по гриду. Вот что я имею на данный момент: <?php if (($_REQUEST) && ($_REQUEST['ajax_request']) == 'yes') { $mas = array('company' => "q1w2e3r4t5y6u7", 'price' => "12"); $all = array('cast' => $mas); echo json_encode($all); exit(); } ?> <html> <head> <title>p003.com</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="js/ext/resources/css/ext-all.css" /> <link rel="stylesheet" type="text/css" href="js/ext/examples/grid/grid-examples.css" /> <script type="text/javascript" src="js/ext/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="js/ext/ext-all.js"></script> <script type="text/javascript" src="js/grid_example.js"></script> </head> <body> <div id = 'grid-example'></div> </body> </html> Ext.onReady(function(){ // create the data store var myStore = new Ext.data.ArrayStore( { proxy: new Ext.data.HttpProxy({ url : 'index.php', method : 'POST' } ), baseParams: { ajax_request : "yes" }, reader: new Ext.data.JsonReader({ root : 'cast', totalProperty : 'total' }), fields: [ { name : 'company', type : 'string' }, { name : 'price', type : 'string' } ] }); myStore.load(); // create the Grid var grid = new Ext.grid.GridPanel( { store : myStore, columns: [ { id : 'company', header : 'Company', width : 160, dataIndex : 'company' }, { header : 'Price', width : 75, dataIndex : 'price' } ], autoExpandColumn : 'company', height : 350, width : 600, title : 'Array Grid', }); grid.render('grid-example'); }); Я лично, думаю, что проблема в коде php, хотя как знать. Надеюсь Вы подскажите мне... ЗЫ. Просьба сильно не пинать, начинающий в этом вопросе... |
$mas = array(array('company' => "q1w2e3r4t5y6u7", 'price' => "12")); а так ? |
Формат д.б. таким:
Код:
{ |
Случайно так зашел, думаю, дай гляну, может ответил кто...
В общем, сделал следующим вечером, следующим образом: <?php if (($_REQUEST) && ($_REQUEST['ajax_request']) == 'yes') { $mas = array('company'=>'cas', 'price'=>'ds'); $all = array($mas, $mas); echo json_encode($all); exit(); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="ext/resources/css/ext-all.css" /> <link rel="stylesheet" type="text/css" href="ext/examples/grid/grid-examples.css" /> <script type="text/javascript" src="js/ext/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="js/ext/ext-all.js"></script> <script type="text/javascript" src="js/grid-example.js"></script> </head> <body> <div id="b1"></div> <div id="grid-example"></div> </body> </html> Ext.onReady(function(){ // create the data store var myStore = new Ext.data.ArrayStore( { proxy: new Ext.data.HttpProxy({ url : 'index.php', method : 'POST' } ), baseParams: { ajax_request : "yes" }, reader: new Ext.data.JsonReader({ // id : 'id', root : 'cast', totalProperty : 'total' }), fields: [ { name : 'company', mapping : 'company', type : 'string' }, { name : 'price', mapping : 'price', type : 'string' } ], listeners :{ load : function(s, rec, obj){ alert(s.getCount()); } } }); myStore.load(); // create the Grid var grid = new Ext.grid.GridPanel( { store : myStore, columns: [ { id : 'company', header : 'Company', width : 160, sortable : true, dataIndex : 'company' }, { header : 'Price', sortable : true, width : 75, dataIndex : 'price' } ], autoExpandColumn : 'company', height : 350, width : 600, title : 'Array Grid', }); grid.render('grid-example'); }); Подскажите, если что неправильно, пожалуйста... |
Скажите, Вы топик по диагонали читаете?
|
DenQ,
вам в предыдущих 2х постах указали на ошибку echo json_encode( array('cast'=>$all,'total'=>2,"success"=>true) ); |
Часовой пояс GMT +3, время: 09:04. |