The database has nothing to do with it. These lines:
$id = $_GET['id'];
$name = $_GET['Name'];
$VATReg = $_GET['VATReg'];
$Cashback = $_GET['Cashback'];
are attempting to access external variables (e.g. supplied via the query string). However, if they do not exist, you'll be generating error messages (as you've shown above).
As such, I personally tend to define such local variables like so:
$foo = isset($_GET['foo']) ? $_GET['foo'] : NULL;
(where NULL can be any default value that makes sense for the given variable).
That way, I could later do something like:
if($foo === NULL) {
// user didn't even supply 'foo' in the URL, go with a default here...
} else {
// well at least they gave us something to work with - try to use it instead
}