プレーヤーでいっぱいの DB があり、特定のトーナメントにプレーヤーを登録するためのページを作成しようとしています。トーナメント ディレクターは、ユーザー名 (「firstname.lastname」のみ) でプレイヤーを検索します。
私が経験している問題は、ループを実行して各 $players[$x] をエコーするときに、最初に一致した DB レコードの ID のみを提供し、一致ごとに番号を 1 回繰り返すことです。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));}