如果' if'如何从SQL列中获取所有值?陈述是否正确?

时间:2018-04-15 18:24:12

标签: php sql mysqli mariadb

如果' if'如何从SQL列中获取所有值?声明是对的?以下是我的意思:

TABLE:

|__ID__|__MadeBy__|__Username__|__Completed__|
|  1   |   user1  |  user14    |   TrueYes   |
|  2   |   user7  |  user14    |   TrueYes   |
|  3   |   NONE   |  user18    |   FalseNo   |
|  4   |   user25 |  user1234  |   TrueYes   |
|  5   |   NONE   |  user1234  |   FalseNo   |

我想要的是循环完成已完成'列,如果有值,则显示 FalseNo ,然后从SAME行打印其他值,但不打印所有列。

示例:

如果已完成值= FalseNo ,则从同一行打印 ID 用户名

由于已完成列中有更多行包含 FalseNo 值,因此也会显示它们。

示例:

程序打印:

ID: 3
Username: user18

ID: 5
Username: user1234

我尝试做的是:

<?php
//Coinflips Table
#Select the completed column
$selectCompleted = $mysqli->query("SELECT * FROM coinflips WHERE completed='FalseNo'");
#Get the row associated with the value
$getJoinableList = $selectCompleted->fetch_array(MYSQLI_ASSOC);
#Get the row's value of a column
$getJoinableBetCompleted = $getJoinableList['completed'];
$getJoinableBetID = $getJoinableList['id'];
$getJoinableBetUsername = $getJoinableList['username'];
if($getJoinableBetCompleted == "FalseNo") {
    echo "ID:" . $getJoinableBetID;
    echo "Username" . $getJoinableBetUsername;
}
?>

但这只会让网站崩溃。

提前谢谢Laurynas:)

2 个答案:

答案 0 :(得分:0)

两件事:

您需要使用foreach遍历结果集 - 您正在尝试访问该行,并且您实际上正在访问整个结果集。如果只有一行你可以逃脱...... [0],但听起来就像你在多行之后。 例如:

foreach ($resultSet as $row) {
  ... now you can access the individual row & its columns, e.g. $row['column-name'] ... 
}

检查你的专栏名称/ /包括案例/ - 我每次都被这个名字搞定。

答案 1 :(得分:0)

正如Laurynas所说,你必须循环查询中的每一行才能做你想做的事。

您可以运行以下可行的代码:

# Create your select query
$query = "SELECT * FROM coinflips WHERE completed='FalseNo'";

# Execute your query
$resultset = $mysqli->query($query);

# Check if an error ocurred
if (!$resultset) {
    die("Error: " . $mysqli->error);
}

foreach ($resultset as $user) {

    //$completed = $user['completed'];
    $id = $user['id'];
    $username = $user['username'];

    # Removed because your query is doing this already
    // if ($completed == "FalseNo") {
        echo "ID: " . $id;
        echo "<br>";
        echo "Username: " . $username;
        echo "<br>";
    // }

}