What best practices should be followed when inserting form data into a MySQL database using PHP?

When inserting form data into a MySQL database using PHP, it is important to follow best practices to prevent SQL injection attacks and ensure data integrity. One way to achieve this is by using prepared statements with parameterized queries, which help sanitize user input and prevent malicious SQL code from being executed.

// Establish a database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

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

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Prepare a SQL statement with placeholders
$stmt = $conn->prepare("INSERT INTO table_name (column1, column2) VALUES (?, ?)");

// Bind parameters to the placeholders
$stmt->bind_param("ss", $value1, $value2);

// Set parameter values from form data
$value1 = $_POST['input1'];
$value2 = $_POST['input2'];

// Execute the statement
$stmt->execute();

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