Поскольку файл будет загружен на первом шаге, один из вариантов - поместить местоположение файла в скрытое поле ввода вместе с остальными данными (либо там, либо поместить в сеанс).).С CakePHP, если ваше файловое поле выглядит примерно так:
<input type="file" name="data[User][image]" id="UserImage" />
Тогда вы сможете захватить местоположение через
$location = $this->data['User']['image']['tmp_name'];
, что будет соответствовать чему-то вроде /var / tmp / xxxxxx
Если на последней странице пользователь подтверждает все данные, вы просто используете move_uploaded_file () , чтобы поместить файл на сервер в любом месте.
move_uploaded_file($location, '/new/location');