Другите отговори, използващи конкатенация, са простите. Най-добрият е да използвате подготвени оператори, които ще направят кода ви значително по-сигурен.
$insert = "INSERT INTO " .$new_table. " VALUES(?, ?, ?)";
$q = mysqli_prepare($db, $insert);
mysqli_stmt_bind_param($q, "iss", $ID, $Partner, $Merchant);
mysqli_stmt_execute($q);
Извършването на параметризирани заявки означава, че вашата заявка и данните се изпращат отделно. Това означава, че структурата на заявката вече съществува и не може да бъде променена от нищо друго, вмъкнато в данните, което означава, че сте в безопасност от SQL инжекция.
Вижте ръководството за PHP: