if($result == 'true') {...
Если так проверять, можно долго ждать пока результатом ответа будет строка 'true'.
UPD:
$bd_insert_query = "INSERT INTO " . DB_TABLE . " (mailbox) VALUES ('" . $MailBox . "')";
var_dump($bd_insert_query); // копируем и вставляем в базу руками, смотрим ответ, возможно понимаем что запрос кривой.
$result = mysqli_query($bd_link, $bd_insert_query);
var_dump($result); // смотрим что на самом деле произошло в запросе.
вообще с таким стилем программного кода var_dump должна стать вашей любимой функцией.
Из визуальной части - сходу не вижу где определена DB_TABLE, возможно она вообще вне видимости скрипта.
ну и по мелочи:
имена полей таблиц обычно заключают в апострофы: (`mailbox`);
посмотрите как работать с подготовленными запросами, это сильно лучше чем вставлять сырые данные в запрос.
$bd_insert_query = "INSERT INTO " . DB_TABLE . " ('ID', 'mailbox') VALUES ('LAST_INSERT_ID(), " . $MailBox . "')";
вообще треш и угар, так делать не нужно. Тем более если поле id автоинкрементное. Тем более с ошибкой в полях ввода.