我有一个充满玩家的数据库,我正在尝试创建一个页面来将他们注册到特定的锦标赛中。赛事总监将按用户名(只有“firstname.lastname”)搜索玩家。
我遇到的问题是,当我运行循环来回显每个 $players[$x] 时,它只给出第一个匹配的数据库记录的 ID,并为每个匹配重复一次该数字。它不会返回 ID 7、11、26,而是返回 7、7、7。请有人解释为什么?
我在 .php 文件中编写了以下代码:
session_start();
if (isset($_POST['newsearch']) === true && empty($_POST['newsearch'] === false)){
require 'dbconnect.php';
$term = $_POST['newsearch'];
$terms = "%" . $term . "%";
$query = ("SELECT PlayerID FROM players WHERE Username LIKE '$terms'");
$run_query = mysqli_query($dbcon, $query);
$search = mysqli_fetch_assoc($run_query);
$players = array ();
do{
//Get data from players table
$PlayerID = $search['PlayerID'];
array_push ($players, $PlayerID);
}
while ($dbsearch = mysqli_fetch_assoc($run_query));}