So I am trying to update a database field using a html form and some PHP code, but I cannot get it to work, it throws no errors but does not update the field?, Im not sure if it
UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value
Update query sample but i don't get your sql ..you missing your where
clause
You need to use WHERE
Condition whenever you try to update something to table.
Here's my code :
test.html
<html>
<form method="post" action="updateform.php" />
Name : <input type="text" name="name" /> </br>
<input type="submit" name="Submit" value="update" />
</form>
</html>
updateform.php
<?php
$name = $_POST['name'];
$connection = mysqli_connect("localhost", "root", "Enter Passwd Here","Enter db_name here");
if(mysqli_connect_errno())
{
echo "failed to connect " . mysqli_connect_error();
}
if(isset($_POST['Submit']))
{
$query = "UPDATE `test_table` SET `name` = '$name' WHERE `cost` = 500";
$result = mysqli_query($connection,$query);
if (!$result) {
die('Error' . mysqli_error($connection));
}
else
{
echo "Successfully updated";
}
}
?>
To demonstrate I've created a database & table test_table
with 3 field. (id,name,cost)
This is the structure of my table :
Before executing the above script, our table contains this datas
After executing the script, the name in second row changes from ramu
to shiva
since we specified cost
as 500 in WHERE
Condition.
$query = "UPDATE `test_table` SET `name` = '$name' WHERE `cost` = 500";