PHP Update Working one day, not the next?

This should work…

$query = "UPDATE Suppliers SET `Name` = '$name' WHERE ID = '$supplier_id'";

I don’t know how picky mySQL is (it’s been a while), but I noticed in the SELECT statement above doesn’t quote out the id

$query = "UPDATE Suppliers SET `Name` = '$name' WHERE ID = $supplier_id";

Have you done an echo of $query just to be sure what you’re executing is what you think?

You should also consider moving towards prepared statements, which is safer that just using the value directly…

$stmt = $mysqli->prepare("UPDATE Suppliers SET `Name` = ? WHERE ID = ?");

$stmt->bind_param("si", $name, $supplier_id);
$stmt->execute();
$stmt->close();