How can PDO be used to securely update data in a MySQL database with PHP?
To securely update data in a MySQL database with PHP using PDO, you should use prepared statements to prevent SQL injection attacks. Prepared statements separate SQL logic from user input, making it safe to execute dynamic queries.
<?php
// Establish a database connection
$dsn = 'mysql:host=localhost;dbname=mydatabase';
$username = 'username';
$password = 'password';
$options = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
try {
$pdo = new PDO($dsn, $username, $password, $options);
} catch (PDOException $e) {
die("Could not connect to the database: " . $e->getMessage());
}
// Prepare and execute the update query
$stmt = $pdo->prepare("UPDATE table SET column = :new_value WHERE id = :id");
$stmt->bindParam(':new_value', $new_value);
$stmt->bindParam(':id', $id);
$new_value = "new value";
$id = 1;
$stmt->execute();
echo "Data updated successfully";
?>