Are there any best practices for creating a dropdown selection of usernames in an HTTP popup box for authentication?

When creating a dropdown selection of usernames in an HTTP popup box for authentication, it is important to ensure that the usernames are securely stored and retrieved from a database. One best practice is to sanitize the input to prevent SQL injection attacks. Additionally, consider implementing a secure hashing algorithm for storing passwords and using HTTPS to encrypt the communication between the client and server.

<?php
// Connect to database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

$conn = new mysqli($servername, $username, $password, $dbname);

// Retrieve usernames from database
$sql = "SELECT username FROM users";
$result = $conn->query($sql);

// Create dropdown selection
echo '<select name="username">';
while($row = $result->fetch_assoc()) {
    echo '<option value="' . $row["username"] . '">' . $row["username"] . '</option>';
}
echo '</select>';

// Close database connection
$conn->close();
?>