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