MySQL — Datatables PHP файл для исключения определенных строк

У меня есть следующее, что я использую с таблицами данных, и он прекрасно работает, чтобы получить то, что мне нужно:

$table = 'full_data';

$primaryKey = 'index';

$columns = array(
array( 'db' => 'category',  'dt' => 0 ),
array( 'db' => 'value',  'dt' => 1 ),
array( 'db' => 'database_percent',     'dt' => 2),
array( 'db' => 'national_percent',     'dt' => 3 ),
array( 'db' => 'index_value',     'dt' => 4 ),
array( 'db' => 'quadrant',     'dt' => 5 )
);

$sql_details = array(
'user' => 'root',
'pass' => '*****',
'db'   => 'my_db',
'host' => 'localhost'

);

require( 'ssp.class.php' );

echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);

Теперь я хотел бы исключить строки из того, что в конечном итоге отображается в JSON этим файлом. Запрос MySQL, который получает то, что я хочу, это:

SELECT * FROM  `full_data` WHERE  `category` NOT LIKE  'state'

Однако я понятия не имею, как включить это в мой php-файл, чтобы только правильные строки кодировались в JSON для использования в моей таблице. Совершенно новый для использования баз данных MySQL / PHP.

РЕДАКТИРОВАТЬ: вот мой ssp.class.php файл.

0

Решение

Я уверен, что есть много способов сделать это (и извините за вопрос с минимальными деталями), но вот что я смог сделать, чтобы заставить это работать.

Благодаря предложению @HartmutHolzgraefe я заглянул в свой файл класса SSP и нашел это:

// Main query to actually get the data
$data = SSP::sql_exec( $db, $bindings,
"SELECT SQL_CALC_FOUND_ROWS `".implode("`, `", SSP::pluck($columns, 'db'))."`
FROM `$table`
$where
$order
$limit");

Я просто обновил запрос, чтобы он соответствовал запросу, необходимому для исключения этих строк. Для этого мне пришлось сделать второй файл ssp.class.php, так как я использую оригинал в нескольких других местах, и он мне нужен как есть.

Как я уже сказал, я уверен, что есть лучший способ сделать это по сравнению с двумя этими файлами, но это был быстрый «взлом», который я смог придумать.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]