如何使用ssp.class.php连接两个表

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了如何使用ssp.class.php连接两个表脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
开始使用 DataTables Table plug-in for jQuery并遇到了一些问题.我正在使用 here的示例代码.

我有MysqL表女巫看起来像那样:

father_id只是在同一个表中的id值,只在不同的行中.因此,如果我想知道父亲的名字,我必须在同一个表中搜索WHERE id = father_id.但DataTable所做的只是显示MysqL表的内容.

在我的DataTable中,我希望显示如下数据:

因此,当DataTable从MysqL表中获取数据时,但在创建表之前,我想要更改当时MysqL中同一行中的father_id值的列值.我想通过使用特定的father_id搜索添加father_name.

解决方法

正如 PaulF所指出的,您需要使用JOIN或子查询从同一个表中检索父亲的名字.

我假设您正在使用ssp.class.PHP根据您提到的示例在服务器端处理您的数据.

类ssp.class.PHP不支持连接和子查询,但有一种解决方法.诀窍是在$table deFinition中使用如下所示的子查询.将表替换为子查询中的实际表名.

$table = <<<EOT
 (
    SELECT 
      a.id,a.name,a.father_id,b.name AS father_name
    From table a
    LEFT JOIN table b ON a.father_id = b.id
 ) temp
EOT;

$PrimaryKey = 'id';

$columns = array(
   array( 'db' => 'id','dt' => 0 ),array( 'db' => 'name','dt' => 1 ),array( 'db' => 'father_id','dt' => 2 ),array( 'db' => 'father_name','dt' => 3 )
);

$sql_details = array(
   'user' => '','pass' => '','db'   => '','host' => ''
);

require( 'ssp.class.PHP' );
echo json_encode(
   SSP::simple( $_GET,$sql_details,$table,$PRimaryKey,$columns )
);

您还需要编辑ssp.class.PHP并用From $table替换FROM` $table`的所有实例以删除反引号.

确保所有列名都是唯一的,否则使用AS来分配别名.

笔记

还有github.com/emran/ssp存储库,其中包含支持JOIN的增强型ssp.class.PHP.

链接

有关更多信息,请参见jQuery DataTables: Using WHERE,JOIN and GROUP BY with ssp.class.php.

脚本宝典总结

以上是脚本宝典为你收集整理的如何使用ssp.class.php连接两个表全部内容,希望文章能够帮你解决如何使用ssp.class.php连接两个表所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。