Müdavim Girişi

E-Posta
Parola

Ücretsiz Kayıt Ol


Online Müdavimler (0 Kişi)
  • Online Kişi Bulunmadı

Yazar Hakkında
x
İsmail Kocacan
İsmail Kocacan is experienced on many development platforms and continues to learn technologies. Since the age of 16-17, dealing with software technologies. And continuous learning, teaching, research, continues to develop.
ExtJS GridPanel Php XML Veri Okumak

Merhaba
Php ile veri kaynağıdan çektiğimiz verikümesini XML formatına çevirerek ext gridpanel nesnesi üzerinde gösterimini görücez.


Getdata.php

<?php
class DB {
    function GetDatasetAsXML() {
        $servername = ‘?’;
        $username = ‘?’;
        $password = ‘?’;
        $connectionID = mssql_connect($servername, $username, $password);
        mssql_select_db("?",$connectionID);
     
        $result = mssql_query("select ContentID,Title from Contents Order By ContentID DESC");

        $xmlresult = "<?xml version=\"1.0\" encoding=\"ISO-8859-9\" standalone=\"yes\"?>\n";
        $xmlresult.="<Rows>\n";

        while ($row = mssql_fetch_object($result)) {
            $xmlresult.="\t<Row>\n";
            $xmlresult.="<ContentID>".$row->ContentID."</ContentID>";
            $xmlresult.="<Title>".str_replace("&","",$row->Title)."</Title>";
            $xmlresult.="\t</Row>\n";
        }
        $xmlresult.="</Rows>";
        mssql_close($connectionID);
        return $xmlresult;
    }
}
//XML ile çalışırken türkçe karakter problemi olmaması için ISO-8859-9
header("Content-type:text/xml; charset=ISO-8859-9");
$db = new DB();
echo $db->GetDatasetAsXML();
unset($db);
?>




Categories.js
 Ext.onReady(function(){  
    // Store nesnesi veri saklamak için kullanılır.
    // Sunucu(server-side) dan çekilen verinin istemci(client-side)
    // tarafındaki halidir diyebiliriz özetle.
    // verinin en son değişen hali store üzerinde tutulur.
    // Aşağıdaki gridi bu categoryStore nesnesine bağladığınızda
    // grid veya başka bir nesnede olabilir,grid üzerindeki veri de yaptığınız
    // her değişiklik(ekleme,silme,değiştirme) store nesnesine yansıtılır.
    // url : json veya xml formatındaki veri kaynağının adresi atanabilir
    var categoryStore = Ext.create('Ext.data.XmlStore', {
        fields: [
        {
            name: 'ContentID'
        },

        {
            name: 'Title'
        }],
        autoLoad: true,
        proxy: {
            type: 'ajax',
            url: 'getdata.php',
            reader: {
                type: 'xml',
                root:'Rows',
                record:'Row',
                idProperty:'ContentID'
               
            }
        }
    });
 
           
       
    //Gridpanel nesnesi oluşturuyoruz.
    //Gridpanelde göstereceğimiz veri kaynağını store özelliği ile belirtiyoruz.
    //renderTo özelliği gridi nereden gösterecek onu belirtiyoruz.
    var gridPanel=Ext.create('Ext.grid.Panel', {
        renderTo: Ext.getBody(),
        store: categoryStore,
        autoWidth:true,
        height: 600,
        title: 'Contents',
        columns: [
        {
            text: 'No',
            width: 50,
            dataIndex: 'ContentID'
        },
        {
            text: 'Başlık',
            width: 600,
            dataIndex: 'Title'
        }
        ]
    });
           
    //instance üzerinden nesnenin üyelerine erişim
    gridPanel.setTitle('Makaleler');
           
});


index.php
<!DOCTYPE html>
<html>
    <head>
    <title>extjs Php xml veri Okuma</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

    <link href="../extjs/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
    <script src="../extjs/ext-all.js" type="text/javascript"></script>
    <script src="Categories.js" type="text/javascript"></script>
</head>
<body>
   
</body>
</html>

Demo : http://yazilimarge.com/ext/xmlreadsample/ 
Kaynak Kod

Kaynaklar :
http://docs.sencha.com/ext-js/4-0/#!/api/Ext.data.XmlStore
http://docs.sencha.com/ext-js/4-0/#!/guide/grid


İsmail Kocacan (Yazılımcı Bozuntusu)
ismailkocacan at  gmail com


Kategori : JS-JQuery-ExtJS | 02.02.2012 15:21:00  | 260 defa okundu  | 0 Yorum |

Yazara Ait Diğer Makaleler(51) Makaleye Yapılan Yorumlar İlk yorum yazan siz olun
Ara
 
Anket
Hangi VeriTabanı Yönetim Sistemini Kullanıyorsunuz ?