2016-10-05 14 views
0

我有一個包含ajax/ssi數據庫連接的表。使用列中的數據進行數據表工作

我的數據庫中的一個字段我存儲的數字(1 =男0 =女)

我有什麼做的,從數據庫(1/0)的數字更改到文本「男性」或「女性」或通過圖標改變它。

而我怎麼可以使用一個過濾器(參觀者看不到值1或0)?

這裏是data.php

$columns = array(
array('db' => 'CONTACT_GROUP', 'dt' => 0), 
array('db' => 'KD_NO',   'dt' => 1), 
array('db' => 'TYPE',  'dt' => 2), 
array('db' => 'ORG_NAME', 'dt' => 3), 
array('db' => 'VORNAME', 'dt' => 4), 
array('db' => 'NAME',  'dt' => 5), 
array('db' => 'PLZ',  'dt' => 6), 
array('db' => 'ORT',  'dt' => 7) 
); 
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
* If you just want to use the basic configuration for DataTables with PHP 
* server-side, there is no need to edit below this line. 
*/ 
require($vz.'assets/global/plugins/datatables/ssp.class.php'); 
echo json_encode(
SSP::simple($_GET, $table, $primaryKey, $columns) 
); 
unset($modDB); 

的一些代碼的這個

$.fn.dataTable.pipeline = function (opts) { 
// Configuration options 
var conf = $.extend({ 
    pages: 5,  // number of pages to cache 
    url: '',  // script url 
    data: null, // function or object with parameters to send to the server 
        // matching how `ajax.data` works in DataTables 
    method: 'GET' // Ajax HTTP method 
}, opts); 

// Private variables for storing the cache 
var cacheLower = -1; 
var cacheUpper = null; 
var cacheLastRequest = null; 
var cacheLastJson = null; 

return function (request, drawCallback, settings) { 
    var ajax   = false; 
    var requestStart = request.start; 
    var drawStart  = request.start; 
    var requestLength = request.length; 
    var requestEnd = requestStart + requestLength; 

    if (settings.clearCache) { 
     // API requested that the cache be cleared 
     ajax = true; 
     settings.clearCache = false; 
    } 
    else if (cacheLower < 0 || requestStart < cacheLower || requestEnd > cacheUpper) { 
     // outside cached data - need to make a request 
     ajax = true; 
    } 
    else if (JSON.stringify(request.order) !== JSON.stringify(cacheLastRequest.order) || 
       JSON.stringify(request.columns) !== JSON.stringify(cacheLastRequest.columns) || 
       JSON.stringify(request.search) !== JSON.stringify(cacheLastRequest.search) 
    ) { 
     // properties changed (ordering, columns, searching) 
     ajax = true; 
    } 

    // Store the request for checking next time around 
    cacheLastRequest = $.extend(true, {}, request); 

    if (ajax) { 
     // Need data from the server 
     if (requestStart < cacheLower) { 
      requestStart = requestStart - (requestLength*(conf.pages-1)); 

      if (requestStart < 0) { 
       requestStart = 0; 
      } 
     } 

     cacheLower = requestStart; 
     cacheUpper = requestStart + (requestLength * conf.pages); 

     request.start = requestStart; 
     request.length = requestLength*conf.pages; 

     // Provide the same `data` options as DataTables. 
     if ($.isFunction (conf.data)) { 
      // As a function it is executed with the data object as an arg 
      // for manipulation. If an object is returned, it is used as the 
      // data object to submit 
      var d = conf.data(request); 
      if (d) { 
       $.extend(request, d); 
      } 
     } 
     else if ($.isPlainObject(conf.data)) { 
      // As an object, the data given extends the default 
      $.extend(request, conf.data); 
     } 

     settings.jqXHR = $.ajax({ 
      "type":  conf.method, 
      "url":  conf.url, 
      "data":  request, 
      "dataType": "json", 
      "cache": false, 
      "success": function (json) { 
       cacheLastJson = $.extend(true, {}, json); 

       if (cacheLower != drawStart) { 
        json.data.splice(0, drawStart-cacheLower); 
       } 
       if (requestLength >= -1) { 
        json.data.splice(requestLength, json.data.length); 
       } 

       drawCallback(json); 
      } 
     }); 
    } 
    else { 
     json = $.extend(true, {}, cacheLastJson); 
     json.draw = request.draw; // Update the echo for each response 
     json.data.splice(0, requestStart-cacheLower); 
     json.data.splice(requestLength, json.data.length); 

     drawCallback(json);  } 
}}; 
// Register an API method that will empty the pipelined data, forcing an Ajax 
// fetch on the next draw (i.e. `table.clearPipeline().draw()`) 
$.fn.dataTable.Api.register('clearPipeline()', function() { 
return this.iterator('table', function (settings) { 
    settings.clearCache = true; 
}); 
}); 
// 
// DataTables initialisation 
// 
$(document).ready(function() { 
$('#ajax_table1').DataTable({ 
    "processing": true, 
    "serverSide": true, 
    "ajax": $.fn.dataTable.pipeline({ 
     url: 'data.php', 
     pages: 5 // number of pages to cache 
    }) 
}); 
}); 

希望anyboby可以解釋它 - 在數據表的網站上的例子不會幫助我很多這一點。

回答

0

我不知道在哪裏,你是如何獲取你的數據,但只給你一個想法,在你的PHP文件,你可以這樣做:

$gender = ($your_var==1) ? 'Male' : 'Female'; 

然後,只需通過$性別將您的列

+0

我已經添加了PHP文件的完整代碼,所以我如何在這個文件中更改數據庫中的值? – 4usolutions

+0

我目前沒有看到任何'php'文件。這必須是你用來從你的數據庫中獲取數據的文件 – Franco

+0

嚴重,這就是我所使用的,它的工作原理... – 4usolutions

相關問題