I'm trying to add values to a table in phpmyadmin and I get the error: Unknown column '...' in 'field list'.
Here's my code:
<?php
//preparing the patch to copy the uploaded file
$target_path = "images/";
//adding the name of the file, finishing the path
$target_path = $target_path . basename( $_FILES['image']['name']);
//moving the file to the folder
if(move_uploaded_file($_FILES['image']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['image']['name']).
" has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}
//getting input from the form
$name = $_POST['game'];
$description = $_POST['beschrijving'];
//preparing the query to insert the values
$query = "INSERT INTO tblGames (name, description, image) VALUES ($name, $description,". $target_path .")";
//opening connection to db
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
//selecting a db
mysql_select_db("BouncingGiani", $link) or die(mysql_error());
//running the query
$result = mysql_query($query) or die (mysql_error());
//closing the connection
mysql_close($link);
?>
so when I enter fds as name in the form on the previous page I get : Unknown column 'fds' in 'field list'. This never happened to me before and I have no idea on what is going on.
MySQL considers the value to be a column name. To fix the error above, simply add a quotation mark around the value. You can use both single quotes or double quotes as shown below: INSERT INTO users(username, display_name) VALUES ("jackolantern", 'Jack');
The MySQL unknown column in field list error happens when you put a column name in your SQL script that can't be found by MySQL. The error above is because there's no student_name column in the students table.
I think this
$query = "INSERT INTO tblGames (name, description, image) VALUES ($name, $description,". $target_path .")";
should be
$query = "INSERT INTO tblGames (name, description, image) VALUES ('$name', '$description', '". $target_path ."')";
It looks like the values should be quoted in your $query
statement, i.e. $name
, $description
, and $target_path
.
$query = "INSERT INTO tblGames (name, description, image)
VALUES ('$name', '$description', '" . $target_path . "')";
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With