KjayCopper
KjayCopper

Reputation: 27

PHP UPDATE Unknown column 'name' in 'field list'

I seem to be having an issue when it come to updating a database using PHP. I keep getting the error:

ERROR: Could not able to execute UPDATE settings SET value='0' WHERE id='2'. Unknown column 'value' in 'field list'

but the Column "value" does exist, and I have tried what people have previously said when asking the same question about it error but nothing has worked so far. what would be the reason behind this not working?

Full Code:

require 'config.php';

$link = mysqli_connect("LocalHost", "PSRPCADM", "999989Ki9?", "PSRPC");



// Check connection

if($link === false){

    die("ERROR: Could not connect. " . mysqli_connect_error());

}



// Escape user inputs for security
if(isset($_POST['Monday']) &&
$_POST['Monday'] == 'Yes')
{
$monday = "1";
}
else
{
$monday = "0";
}   



// attempt insert query execution


$sql = "UPDATE settings SET value='$monday' WHERE id='2'";




if(mysqli_query($link, $sql)){

echo "it worked";


} else{

    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);

}



// close connection

// close connection

mysqli_close($link);

Upvotes: 0

Views: 1052

Answers (3)

Alexander Theodore
Alexander Theodore

Reputation: 34

Try This

$sql = "UPDATE `settings` SET `value`='".$monday."' WHERE id='2'";

hope this help

Upvotes: 1

D-Shih
D-Shih

Reputation: 46239

value is a keyword in mysql you can try to use quote character between value

"UPDATE settings SET `value`='$monday' WHERE id='2'"

Keywords and Reserved Words

Upvotes: 2

fricardi
fricardi

Reputation: 70

$sql = "UPDATE settings SET value='$monday' WHERE id='2'";

In this line you're inputting the string '$monday', not the content of $monday. Perhaps the error was thrown because in the database 'value' don't support strings. Couldn't find any other errors.

Upvotes: 0

Related Questions