【问题标题】:How to search record "without knowing tables name" in database using php如何使用php在数据库中搜索“不知道表名”的记录
【发布时间】:2014-07-18 08:19:29
【问题描述】:

我正在尝试制作一个 PHP 搜索表单,让您搜索某些东西不知道没有表名,搜索后,它与整个数据库中带有“搜索文本”的记录进行比较?

【问题讨论】:

  • 问题不清楚。你能解释更多吗?

标签: php database search


【解决方案1】:

您想在每个表的每个字段中进行搜索?

您可以尝试获取所有表格:

SHOW TABLES FROM your-database;

然后对于每个表,您可以获得字段:

SHOW COLUMNS FROM your-table

例子:

$array = array();
$getTables = mysqli($link, "SHOW TABLES FROM your-database");

while ($t = mysqli_fetch_row($getTables))
    $array[$t[0]] = array();

foreach( $array as $tableName => $fields )
{
    $getColumns = mysqli($link, "SHOW COLUMNS FROM ".$tableName);

    while ($c = mysqli_fetch_assoc($getColumns))
        $array[$tableName][] = $c['Field'];
}

var_dump($array); // will output tables and each fields;

现在您有了表格/字段,因此您可以构建查询来进行搜索。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多