首页 > 解决方案 > 查询数组的每个元素并将它们显示为单独的数据

问题描述

我有一个看起来像这样的数组
“76561198086947554”,“76561198133402236”

我需要单独查询每个值并在页面上显示查询的数据
$pid 将是我想要单独查询的数组的单个值

$sqlget = "SELECT * FROM players WHERE pid='$pid'";
$result = $conn->query($sqlget);

if ($result->num_rows > 0) {
  while ($row = $result->fetch_assoc()) {
    $name = $row["name"];

    echo "<div>
      Members: ".$name."
    <div>";
  }
}

如果您愿意,我很乐意尝试多解释一下。

标签: php

解决方案


首先,您使用存在 sql 注入问题且已过时的 mysql 查询。其次,如果我知道您需要在 WHERE 子句中将 pid 值放在您拥有的数组中,那么您的查询应该是这样的:

$your_array = "76561198086947554, 76561198133402236";
$sqlget = " SELECT * FROM players WHERE pid IN ('".$your_array."') "; 
// here you check if pid is in array values
... // the other code

希望它有所帮助并尝试使用 PDO 语句或 mysqli 转换您的代码。


推荐阅读