Beyaz.Net İpucu
Codeigniter da kendo gridinin kullanilmasi ve sunucudan verilerinin alinmasi
#Bu script ve css leri kendo sitesinden indirip head bolumunuze ekyeyin
<link href="/css/kendo.common.min.css" rel="stylesheet" type="text/css">
<link href="/css/kendo.default.min.css" rel="stylesheet" type="text/css">
<script type="text/javascript" charset="utf-8" src="/js/kendo.web.min.js"></script>
#Body bolumunuzde gridi olusturun
<div id="webfilter_kayitlari"></div>
<bu script ile olusturdugunuz gridin parametrelerini belirleyin
<script>
$("#webfilter_kayitlari").kendoGrid({
dataSource: {
transport: {
read: {
//verinin sunucuya gonderilme yontemini belirliyoruz
type: 'post',
//sunucudan gelen verinin tipini belirliyoruz
dataType: 'json',
//sunucuda calistirilacak kodun linkini veriyoruz
url: "kayitlar/webfilterlistesi/"
},
},
//sunucudan gelen json verinin nasil yorumlanacagini belirliyoruz
schema: {
data: "data",
total: "total",
model: {
fields: {
webfilter_sip: {type: "string"},
webfilter_hostname: {type: "string"},
webfilter_url: {type: "string"},
webfilter_msg: {type: "string"},
webfilter_status: {type: "string"},
webfilter_date: {type: "date" },
webfilter_time: {type: "string"}
}
}
},
//Gridde gosterilecek satir sayisi
pageSize: 20,
//Sayfalama yapilacagini belirtir
serverPaging: true,
//sayfada siralama yapilabilecegini belirtir
serverSorting: true
},
//Gridin yuksekligi
height: 670,
sortable: true,
resizable: true,
//Sayfalamada sayfa sayisi girilebilecek sekilde
pageable: { input: true, numeric: false },
//Kolonlar , basliklari, uzunluklari ve ozellikleri belirlenir
columns:[ {field:"webfilter_sip", title:"Kaynak IP", width: 70, attributes:{style:"text-align:center;"} },
{field:"webfilter_hostname",title:"Hedef Sunucu",width: 70, attributes:{style:"text-align:left;"} },
{field:"webfilter_url", title:"Url", width: 140, attributes:{style:"text-align:left;"} },
{field:"webfilter_msg", title:"Mesaj", width: 140, attributes:{style:"text-align:left;"} },
{field:"webfilter_status",title:"Durum", width: 50, attributes:{style:"text-align:left;"} },
{field:"webfilter_date",title:"Tarih", width: 40, attributes:{style:"text-align:center;"},format: "{0:MM/dd/yyyy}"},
{field:"webfilter_time",title:"Saat", width: 40, attributes:{style:"text-align:center;"} }
]
});
#controllers da sunucu tarafi php kodunu yazmalisiniz. kod veri tabanindan bilgileri alip json formatinda echo yapmasi gerekir.
#Ornek json data
//
<link href="/css/kendo.common.min.css" rel="stylesheet" type="text/css">
<link href="/css/kendo.default.min.css" rel="stylesheet" type="text/css">
<script type="text/javascript" charset="utf-8" src="/js/kendo.web.min.js"></script>
#Body bolumunuzde gridi olusturun
<div id="webfilter_kayitlari"></div>
<bu script ile olusturdugunuz gridin parametrelerini belirleyin
<script>
$("#webfilter_kayitlari").kendoGrid({
dataSource: {
transport: {
read: {
//verinin sunucuya gonderilme yontemini belirliyoruz
type: 'post',
//sunucudan gelen verinin tipini belirliyoruz
dataType: 'json',
//sunucuda calistirilacak kodun linkini veriyoruz
url: "kayitlar/webfilterlistesi/"
},
},
//sunucudan gelen json verinin nasil yorumlanacagini belirliyoruz
schema: {
data: "data",
total: "total",
model: {
fields: {
webfilter_sip: {type: "string"},
webfilter_hostname: {type: "string"},
webfilter_url: {type: "string"},
webfilter_msg: {type: "string"},
webfilter_status: {type: "string"},
webfilter_date: {type: "date" },
webfilter_time: {type: "string"}
}
}
},
//Gridde gosterilecek satir sayisi
pageSize: 20,
//Sayfalama yapilacagini belirtir
serverPaging: true,
//sayfada siralama yapilabilecegini belirtir
serverSorting: true
},
//Gridin yuksekligi
height: 670,
sortable: true,
resizable: true,
//Sayfalamada sayfa sayisi girilebilecek sekilde
pageable: { input: true, numeric: false },
//Kolonlar , basliklari, uzunluklari ve ozellikleri belirlenir
columns:[ {field:"webfilter_sip", title:"Kaynak IP", width: 70, attributes:{style:"text-align:center;"} },
{field:"webfilter_hostname",title:"Hedef Sunucu",width: 70, attributes:{style:"text-align:left;"} },
{field:"webfilter_url", title:"Url", width: 140, attributes:{style:"text-align:left;"} },
{field:"webfilter_msg", title:"Mesaj", width: 140, attributes:{style:"text-align:left;"} },
{field:"webfilter_status",title:"Durum", width: 50, attributes:{style:"text-align:left;"} },
{field:"webfilter_date",title:"Tarih", width: 40, attributes:{style:"text-align:center;"},format: "{0:MM/dd/yyyy}"},
{field:"webfilter_time",title:"Saat", width: 40, attributes:{style:"text-align:center;"} }
]
});
#controllers da sunucu tarafi php kodunu yazmalisiniz. kod veri tabanindan bilgileri alip json formatinda echo yapmasi gerekir.
#Ornek json data
//
{"data":[{"webfilter_sip":"10.10.18.165",
// "webfilter_hostname":"xxyyzz.net",
// "webfilter_url":"
\/",
// "webfilter_status":"passthrough",
// "webfilter_msg":"URL has been visited",
// "webfilter_date":"\/Date
(1357077600000)\/",
// "webfilter_time":"11:39:45"}
],
// "total"
: 5145}