PHP如何基于列值显示db表

PHP如何基于列值显示db表,php,mysql,Php,Mysql,我有一个PHP脚本来回显数据库中存在的db表的名称,但现在我只想回显那些记录在表中的用户 以下是我当前的脚本: if ( !$conn ) { die("Connection failed: " . mysqli_connect_error()); } $tablesquerys = "SHOW TABLES"; $tableresults = mysqli_query($conn, $tablesquerys) or die(mysq

我有一个PHP脚本来回显数据库中存在的db表的名称,但现在我只想回显那些记录在表中的用户

以下是我当前的脚本:

        if ( !$conn ) {
        die("Connection failed: " . mysqli_connect_error());
    }

    $tablesquerys = "SHOW TABLES";

    $tableresults = mysqli_query($conn, $tablesquerys) or die(mysqli_error($conn));

    if ( mysqli_num_rows($tableresults) > 0 ) {

        echo "<select id='dbtable_selector' class='dbtable-selector'>";
        echo "<option value='Current Tables' selected='selected'>Current Files</option>";

        while( $table = mysqli_fetch_array($tableresults, MYSQLI_NUM) ) {
            echo("<option value='" . $table[0] . "'>" . $table[0] . "</option>");
        }

        echo "</select>";
    }

    mysqli_close($conn);
仍然没有回音或任何错误

好的,我在上面的尝试中看到了缺陷,因此这是我的第三次尝试:

    if ( !$conn ) {
        die("Connection failed: " . mysqli_connect_error());
    }

    $tablesquerys = "SHOW TABLES";

    $tableresults = mysqli_query($conn, $tablesquerys) or die(mysqli_error($conn));

    if ( mysqli_num_rows($tableresults) > 0 ) {

        echo "<select id='dbtable_selector' class='dbtable-selector'>";
        echo "<option value='Current Tables' selected='selected'>Current Files</option>";

        while( $table = mysqli_fetch_array($tableresults, MYSQLI_NUM) ) {
            $userquerys = "SELECT username FROM `" . $table[0] . "`";

            if ( mysqli_query($conn, $userquerys) ) {
                if ( $userquerys === $currentuser ) {
                    echo("<option value='" . $table[0] . "'>" . $table[0] . "</option>");
                }
            } else {
                echo "Error updating record: " . mysqli_error($conn);
            }
        }

        echo "</select>";
    }

    mysqli_close($conn);
        if ( !$conn ) {
        die("Connection failed: " . mysqli_connect_error());
    }

    $tablesquerys = "SHOW TABLES";

    $tableresults = mysqli_query($conn, $tablesquerys) or die(mysqli_error($conn));

    if ( mysqli_num_rows($tableresults) > 0 ) {

        echo "<select id='dbtable_selector' class='dbtable-selector'>";
        echo "<option value='Current Tables' selected='selected'>Current Files</option>";

        while( $table = mysqli_fetch_array($tableresults, MYSQLI_NUM) ) {
            $userquerys = "SELECT username FROM `" . $table[0] . "`";

                if ( mysqli_query($conn, $userquerys) === $currentuser ) {
                    echo("<option value='" . $table[0] . "'>" . $table[0] . "</option>");
                }
        }

        echo "</select>";
    }

    mysqli_close($conn);
if(!$conn){
die(“连接失败:”.mysqli_connect_error());
}
$tablesquerys=“显示表格”;
$tableresults=mysqli_查询($conn,$tablesquerys)或die(mysqli_错误($conn));
如果(mysqli_num_行($tableresults)>0){
回声“;
回显“当前文件”;
而($table=mysqli\u fetch\u数组($tableresults,mysqli\u NUM)){
$userquerys=“从`.$table[0]中选择用户名”。“`”;
if(mysqli_查询($conn,$userquerys)==$currentuser){
echo(“$table[0]”);
}
}
回声“;
}
mysqli_close($conn);

还是没什么。

你到底在哪里定义了
$userquerys
?构建完整的查询字符串并将其与其他查询字符串进行比较有什么意义?如果($table[0]==$username)直接执行
不是更容易/更有效吗?如果您想检查$table[0]中是否有用户名,那么您根本没有执行查询-您只是定义了一个包含sql的字符串。公平地说,我已经超越了自己。我将在上面发布当前脚本。