Этот код не делает то, что вы думаете, он делает:
<?= $this->Form->button('Submit', ['class'=> "btn btn-primary large icon float-right"]);
$this->Form->end() ?>
Это будет повторять кнопку отправки, но НЕ тег конца формы. Затем вы открываете другую форму, но браузер может интерпретировать это как плохой тег и игнорировать его. (Технически я думаю, что поведение браузера по отношению к этому искаженному HTML не определено, поэтому вы можете по-разному вести себя в разных браузерах.)
Попробуйте вместо этого:
<?php
echo $this->Form->button('Submit', ['class'=> "btn btn-primary large icon float-right"]);
echo $this->Form->end();
?>
или
<?= $this->Form->button('Submit', ['class'=> "btn btn-primary large icon float-right"]);
echo $this->Form->end() ?>
или
<?= $this->Form->button('Submit', ['class'=> "btn btn-primary large icon float-right"]) .
$this->Form->end() ?>
Я бы порекомендовал первый вариант, так как он намного более четкий и менее подвержен случайным сбоям при будущих изменениях; Я никогда не позволю ни одному из последних двух участвовать в проекте, которым управлял.