从单个列中获取表中所有行的mysql数据.PHP


Fetching MySQLi Data from all rows in a table from a single column. PHP

我有一个表,它为所有用户分配一个ID号。我试图获取所有这些ID,并将它们添加到一个数组与foreach使用。我下面使用的方法不适合我。数组中没有填充来自mysql的数据。有人能发现问题吗?

<?php 
    $servername = "localhost";
    $username = "dasusername";
    $password = "daspassword";
    $dbname = "notadummy";
    $conn = new mysqli($servername, $username, $password, $dbname);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    $result = mysql_query("SELECT userid FROM vms_users");
    $data = array();
    while(($row = mysql_fetch_array($result))) {
        $data[] = $row['userid'];
    }
    print_r(array_values($data));
    $conn->close();
?>

我发现了一个错误。感谢@icecub指出拼写错误。

您使用mysqli连接但您使用mysql连接queryingextracting object

因此更改以下部分

$result = mysql_query("SELECT userid FROM vms_users");
//       ^ here
$data = array();
while(($row = mysql_fetch_array($result))) {
    //       ^ here
    $data[] = $row['userid'];
}

$result = $conn->query("SELECT userid FROM vms_users");
$data = array();
while($row = $result->fetch_assoc()) {
    $data[] = $row['userid'];
}