How can the use of mysqli_ and prepared statements improve the security and performance of the database queries in the script?

Using mysqli_ and prepared statements can improve the security of database queries by preventing SQL injection attacks. Prepared statements separate SQL code from user input, allowing the database to distinguish between code and data. This separation reduces the risk of malicious code being injected into the query. Additionally, prepared statements can also improve performance by allowing the database to optimize the query execution plan.

// Connect to the database using mysqli
$mysqli = new mysqli("localhost", "username", "password", "database");

// Prepare a statement
$stmt = $mysqli->prepare("SELECT * FROM users WHERE username = ?");

// Bind parameters
$stmt->bind_param("s", $username);

// Set parameters and execute the statement
$username = "john_doe";
$stmt->execute();

// Get the results
$result = $stmt->get_result();

// Fetch the data
while ($row = $result->fetch_assoc()) {
    // Process the data
}

// Close the statement and connection
$stmt->close();
$mysqli->close();