1 回答

TA貢獻1895條經驗 獲得超7個贊
ssp.class.php不支持JOIN. 但是我們有一個解決方法:
解決方案1(使用子查詢):
在定義中使用子查詢$table并替換dist_code為disnamein $columns,如下所示:
$dbDetails = [
'host' => '****',
'user' => '****',
'pass' => '****',
'db' => '****'
];
$table = '(SELECT r.*, d.disname FROM requestss r INNER JOIN districts d ON r.dist_code = d.discode) tbl';
$primaryKey = 'id';
$columns = [
[ 'db' => 'time_stamp', 'dt' => 0 ],
[ 'db' => 'disname', 'dt' => 1 ],
[ 'db' => 'req_type', 'dt' => 2 ]
];
// Include SQL query processing class
require( 'ssp.class.php' );
// Output data as json format
echo json_encode(
SSP::simple( $_GET, $dbDetails, $table, $primaryKey, $columns )
);
然后,您需要替換 with 的所有實例`$table`以$table刪除ssp.class.php文件中的反引號。
解決方案 2(創建視圖):
如果您不想編輯ssp.class.php文件,可以在數據庫中創建一個視圖:
CREATE
VIEW requests_view
AS SELECT r.*, d.disname FROM requestss r INNER JOIN districts d ON r.dist_code = d.discode;
然后,requests_view用作您的$tableingetData.php文件:
$dbDetails = [
'host' => '****',
'user' => '****',
'pass' => '****',
'db' => '****'
];
$table = 'requests_view';
$primaryKey = 'id';
$columns = [
[ 'db' => 'time_stamp', 'dt' => 0 ],
[ 'db' => 'disname', 'dt' => 1 ],
[ 'db' => 'req_type', 'dt' => 2 ]
];
// Include SQL query processing class
require( 'ssp.class.php' );
// Output data as json format
echo json_encode(
SSP::simple( $_GET, $dbDetails, $table, $primaryKey, $columns )
);
您還可以考慮使用第三方 PHP 庫,例如自定義 SSP 類用于數據表庫或用于 PHP的支持JOINs 的數據表庫。
- 1 回答
- 0 關注
- 96 瀏覽
添加回答
舉報