Вам не хватает /
в вашем $path
.Следующая строка ...
$filename = time() . '.' . $image->getClientOriginalExtension();
сгенерирует строку, например, 123456789.jpg
.Затем в следующей строке вы делаете ...
$path = public_path('img/rentals' . $filename);
, которая объединяет img/rentals
и 123456789.jpg
, в результате чего img/rentals123456789.jpg
.Обратите внимание, что .
объединяет две строки.Затем вы передаете полученную строку в public_path
, которая будет ссылаться на папку в вашем общедоступном каталоге с именем img
и именем файла rentals123456789.jpg
.
Чтобы решить вашу проблему, вам просто нужно вставить форвардкосая черта между:
$filename = time() . '.' . $image->getClientOriginalExtension();
$path = public_path('img/rentals/' . $filename);
, что приведет к папке img/rentals
в вашем общедоступном пути и имени файла 123456789.jpg
.