$stmt->bind_param() не проверява дадените променливи за определен тип, а само ги преобразува в посочения тип. И вашият низ 'aaaaaaa' се преобразува в int-стойност:0. Това е начинът, по който php го прави.
Инструкцията за вмъкване на база данни е грешно място за проверка дали вашите променливи съдържат полезни/правилни стойности. Направете това преди и се опитайте да ги вмъкнете само ако проверките ви работят.
За да извършите проверката на int, можете да използвате php-функцията is_numeric() или is_int().