Umm... Nothing wrong with the PK that I can see; you have 24 fields and in your INSERT all 24 are there as well; although when you are using VALUE you first need to give which fields you are inserting, followed by their values...
This method allows you to insert data into a table in any order and also means that you do not need to insert all the data; ie you could just as well only want to insert into 3 fields ?
INSERT INTO config (..fields..) VALUES (..values..);
An alternative is to use SET ? Although in this case you do need to insert in the right order of fields, ie
Note: In your email field, you give 255 characters ? Doubtful if you'll see an email address that long, so cut it back to maybe 95 ? Reason being, in another post I read, to avoid sql injection attacks, the least number of characters allowed reduces what someone can attempt to use against your database in regards to the amount of text available...
INSERT INTO config SET
user = "Dr Livingstone",
Hope this helps, as I really cannot see what it is with your PK; it all looks good from here.