2016-10-13 4 views
0

Примечание: Пожалуйста, имейте в виду, что я не знаю JavaScript и знаю только Фундаментальный PHP.Плагин FooTables (Similiar to DataTables) - Как получить данные столбцов и строк с сервера/базы данных

Я искал высокий, низкий, далекий, & широкий. Я даже пытался научить некоторых JS найти решение. Но я потерпел неудачу на всех концах. Этот вопрос, на удивление, не существует на этом сайте. Таким образом, здесь нет двойного вопроса. Также не путайте этот вопрос с другими вопросами о загрузке больших наборов данных (большое количество строк) из json-файла. Эти вопросы существуют, и я уже знаю, как это сделать.

С плагином DataTables это легко. И есть документация, чтобы показать вам, как это сделать в точности. К сожалению, этого не существует на веб-сайте fooTable.

Here is the only page that FooTables has that is even close to what I need. ломается Вопрос, как это будет применяться к любому:

  • В таблице на странице с помощью FooTable Plugin
  • Есть 10000 строк данных в базе данных.
  • Владелец веб-сайта должен подключить базу данных к таблице
  • В таблице есть разбиение на страницы. 10 строк на страницу.
  • Только 10 строк должны загружаться при загрузке страницы. Не вся база данных записей.
  • На странице load таблица вытаскивает 10 строк из базы данных и только 10 строк делают скорость страницы намного быстрее.

Это по существу то, что мне нужно.

ЛЮБАЯ помощь по этому вопросу оценивается Я был у него в течение 2 недель без каких-либо положительных результатов. Пожалуйста, имейте в виду, что я не знаю JavaScript, и я знаю только Фундаментальный PHP. Заранее спасибо!

EDIT: Правильно ли это сделать rows.php?

<?php 
// rows 
$rowData = array(
    'id' => $id, 
    'firstName' => $firstName, 
    'something' => $something, 
    'jobTitle' => $jobTitle, 
    'started' => $started, 
    'dob' => $dob, 
    'status' => $status 
); 

header('Content-Type: application/json'); 
echo json_encode($rowData, JSON_UNESCAPED_SLASHES); 

ответ

0

«Загрузка из файла JSON» действительно актуальна.

От страницы Вы связываетесь, они обеспечивают этот код:

jQuery(function($){ 
    $('.table').footable({ 
     "columns": $.get('columns.json'), 
     "rows": $.get('rows.json') 
    }); 
}); 

Это делает запрос AJAX к серверу для извлечения данных из файла JSON, но он не должен быть из файл, пока сервер отвечает данными JSON.

Таким образом, вместо этого вы получите $.get('/columns.php'), чтобы получить данные столбца, и $.get('/rows.php'), чтобы получить данные о строках. More on $.get here.

Затем внутри columns.php, вы должны сделать свои обращения к базе данных, вытащить ваши данные, структура его в same as this и and this, а затем json_encode его.

Теперь я знаю, что вы сказали, что вы не знаете JS и только немного PHP, но вы будете иметь, чтобы узнать некоторые, потому что я не пишу все, что код для вас;)


<?php // columns.php 
$data = array (
    array (
     'name' => 'id', 
     'title' => 'ID', 
     'breakpoints' => 'xs sm', 
     'type' => 'number', 
     'style' => 
      array (
       'width' => 80, 
       'maxWidth' => 80, 
      ), 
    ), 
    array (
     'name' => 'firstName', 
     'title' => 'First Name', 
    ), 
    array (
     'name' => 'lastName', 
     'title' => 'Last Name', 
    ), 
    array (
     'name' => 'something', 
     'title' => 'Never seen but always around', 
     'visible' => false, 
     'filterable' => false, 
    ), 
    array (
     'name' => 'jobTitle', 
     'title' => 'Job Title', 
     'breakpoints' => 'xs sm', 
     'style' => 
      array (
       'maxWidth' => 200, 
       'overflow' => 'hidden', 
       'textOverflow' => 'ellipsis', 
       'wordBreak' => 'keep-all', 
       'whiteSpace' => 'nowrap', 
      ), 
    ), 
    array (
     'name' => 'started', 
     'title' => 'Started On', 
     'type' => 'date', 
     'breakpoints' => 'xs sm md', 
     'formatString' => 'MMM YYYY', 
    ), 
    array (
     'name' => 'dob', 
     'title' => 'Date of Birth', 
     'type' => 'date', 
     'breakpoints' => 'xs sm md', 
     'formatString' => 'DD MMM YYYY', 
    ), 
    array (
     'name' => 'status', 
     'title' => 'Status', 
    ), 
); 

header('Content-Type: application/json'); 
echo json_encode($data, JSON_UNESCAPED_SLASHES); 

Это точно так же, как пример fooTable columns.json, только на PHP.

Теперь, когда он находится на PHP, вы можете вытащить данные из базы данных вместо hardcoding. Я не знаю, как выглядит ваша база данных, поэтому я не мог написать этот код для вас, даже если бы захотел.

rows.php будет выглядеть почти так же, как раз другой формат массива.

+0

Спасибо за ответ. Хорошо, так что это именно то, как у меня в настоящее время установлен мой стол. Просто без ваших $ .get ('/ columns.php') и $ .get ('/ rows.php') я вытаскиваю его из json-файлов, но хочу извлечь из него сервер. Я прочитаю ссылки, которые вы предоставили, чтобы узнать, могу ли я понять и как это реализовать. Вернусь к вам. ответьте, что вы получили мой ответ. Еще раз спасибо. В вашем ответе есть ли какие-либо советы, которые вы можете дать для настройки этого с помощью php? –

+0

Да, я не знаю достаточно php и JS, чтобы иметь возможность этого. Я понимаю концепцию, но у меня полная потеря. Похоже, вся эта работа была напрасной. Спасибо, что пытались помочь. –

+0

В любом случае вы можете показать мне, как это будет выглядеть после завершения? В примере вы можете использовать только 3 столбца и несколько строк, и оттуда я могу отредактировать его, как мне нужно, чтобы он работал? Я заплачу вам, если вы хотите, чтобы у меня не было много, но мне действительно нужно это сделать. –