قيود TableSter (فرز) صفحة واحدة في وقت واحد؟
-
26-09-2019 - |
سؤال
أرى أنه في TableSter ، يمكنك فرز صفحة واحدة في وقت يهمني.
يمكن فرز صفحة واحدة فقط من النتائج في وقت واحد؟ ، أي حد كبير. إذا كان لديك نتيجة استعلام تمتد صفحات متعددة ، كيف ستتعامل مع هذا؟
إذا كان أي شخص يعرف بشكل أفضل ، فلا تتردد في تصحيحي إذا لم يكن صحيحًا
شكرًا.
المحلول
أود تعيين معرف إلى th في thead للجدول الذي يتوافق مع الأعمدة في طاولة SQL.
$("table thead th").click(function(){
$.getJSON('ajax/get_results.php',
{sortby: $(this).attr('id')},
function(data) {
$.each(data, function(){
// fill table here
}
});
});
يمكنك إنشاء بعض الوظائف لفرز الجدول الذي يمكنك أيضًا استخدامه لتغيير الصفحة مع Ajax إذا لم تكن تفعل ذلك بالفعل.
وعلى الواجهة الخلفية ثم فرز مع SQL
"SELECT * FROM table ORDER BY ".$_GET['sortby']
بالطبع يجب عليك تأمين هذا النوع ، على سبيل المثال قم بتصفيةه بمجموعة من القيم المسموح بها. أود أن أقترح إنشاء صفيف مع أسماء فرز الأعمدة المسموح بها واستخدام array_intersect () وظيفة لتصفية القيم المسموح بها فقط أو فقط تحقق مع
if(isset($allowed_columns[$_GET['sortby']]))
ثم فقط إخراج كل شيء في JSON من خلال وضع جميع النتائج في صفيف ثم:
echo json_encode($array_with_results);
أعتقد أنك ترغب في إخراج شيء مثل هذا في JSON:
{
{col1: 'row1',col2: 'row1',col3: 'row1'},
{col1: 'row2',col2: 'row2',col3: 'row2'},
{col1: 'row3',col2: 'row3',col3: 'row3'}
}