Hellek: с вагрантом, как и докером, много примеров готовых систем.
А что вы хотите закрыть для пользователя выше его подпапки? Так как у него нет прав для записи, то он ничего не сделает.
Hellek: почему же? chroot именно для этих вещей, чтобы не дать делать то, что не положено.
А ещё можете его закинуть в контейнер (docker, vagrant). Хочет грохнуть всё внутри — пожалуйста :)
Роман Савицкий: на сайтах с аналогичным поведением именно так и поступают. если пользователь закрыл попап, то обновив страницу (адрес сохранился) у него должен появится этот же попап (так логично).
Tutucu: тут что-то не так. $_FILES['picture']['name'] или $_FILES['picture']['error'] должны быть не пустыми.
для формы точно стоит enctype="multipart/form-data"?
Tutucu: путь к временным файлам, видимо иной и внутренне процесс пытается сохранить куда-то файл в иное место.
Проверьте, чему равен $path . $_FILES['picture']['name'] и $_FILES['picture']['tmp_name']. один из них за пределами разрешённых путей