%s の値に上限を設定すると、SQL 構文エラーが発生します...どの部分が間違っている可能性があり、どのように修正するか..私のような初心者にとっては新しいように見えるので、修正してください
$insertSQL = sprintf('INSERT INTO kontrak (ID, NAME, T_LAHIR, Country) VALUES (%s,(UPPER(%s)), %s, %s)',
GetSQLValueString($_POST['Id'], 'int'),
GetSQLValueString($_POST['Nama'], 'text'),
GetSQLValueString($_POST['Tarikhlahir'], 'date'),
GetSQLValueString($_POST['Country'], 'text'));
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''')), '1983-12-15','42151566'(LONDON' at line 1