honeypot validation should not just check that a form element doesn't exist which is what your code does.
it should validate that the form element does exist and is left empty:
if(isset($_POST['cracker']) && $_POST['cracker'] == "") {
also on public forms you should be using server validation to ensure that the data entered to the form is of the intended type.
server validation can be accessed under webassist -> Forms -> Server Validation.