What are the potential security risks associated with the code provided for the login script in PHP?

The code provided for the login script in PHP is vulnerable to SQL injection attacks as it directly inserts user input into the SQL query. To mitigate this risk, it is recommended to use prepared statements with parameterized queries to prevent malicious input from affecting the query execution.

// Original vulnerable code
$username = $_POST['username'];
$password = $_POST['password'];

$query = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = mysqli_query($conn, $query);

// Fixed code using prepared statements
$username = $_POST['username'];
$password = $_POST['password'];

$query = "SELECT * FROM users WHERE username=? AND password=?";
$stmt = mysqli_prepare($conn, $query);
mysqli_stmt_bind_param($stmt, "ss", $username, $password);
mysqli_stmt_execute($stmt);
$result = mysqli_stmt_get_result($stmt);