Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Заблокирован

Исключить данную вероятность при загрузке файла

15.12.2024, 02:45. Показов 371. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При загрузке файла, в имени указываю id пользователя.

Также id пользователя, необходимо получить в js. Чтобы после загрузки, получить url файла именно того пользователя что загружает... Пусть это будет изображение, загрузили изображение, вставили в img ссылку на файл, в имени которого id пользователя.

Предположим, загружают 2 пользователя. Первый загрузил изображение, второй пользователь знает id первого. В url, в гет параметре указан id пользователя(так есть возможность получить id в js коде). Второй, меняет id(гет параметр) пользователя на id первого, загружает файл.

Получается, что второй пользователь удалил загруженные файлы первого пользователя. То есть заменил их на свои...

Конечно вероятность такая крайне мала, но сама данная возможность напакостить другому неприятна...

Есть ли возможность снизить вероятность таких случаев?

После загрузки файла(новость еще не опубликована), файлу необходимо присвоить уникальное имя - id пользователя.
Id пользователя необходимо знать в js скрипте, для этого в гет параметре есть уникальный ключ, который и содержит id.
Как только загрузили файл(изображение) в html(через js) меняем ссылку на изображение в теге img

Добавлено через 8 минут
Можно после загрузки json отдать id пользователя. Ок, работает, дело в другом.

Предположим, как только загрузили изображение, необходимо из 1 изображения сделать 10. Это занимает около 1 минуты, параллельно с этим, поочерёдно необходимо отображать последнее готовое изображение в html документе пользователя.

Получается, json ответ, не получим пока не будут готовы все изображения.
Ответ от php еще нет, в котором мог быть id пользователя. А изображение уже необходимо отобразить...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2024, 02:45
Ответы с готовыми решениями:

Исключить переменную при загрузке связанных объектов в Entity Framework
Подскажите пожалуйста как произвести загрузку только какой то части класса, а не всего класса var q =...

Ошибка при загрузке данных из dbf файла файла Error 5004: Eihter ACE could not find
День добрый! Возникла ошибка при загрузке данных из dbf файла файла Error 5004: Eihter ACE could not find.....и тд Все права проверил. Из...

При формировании файла исключить повторные вхождения одного и того же числа
Дан файл f, компоненты которого являются целыми числами. Получить файл g, образованный из файла f исключением повторных вхождений одного и...

2
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.12.2024, 02:48
Цитата Сообщение от Dmit199 Посмотреть сообщение
Предположим, загружают 2 пользователя. Первый загрузил изображение, второй пользователь знает id первого. В url, в гет параметре указан id пользователя(так есть возможность получить id в js коде). Второй, меняет id(гет параметр) пользователя на id первого, загружает файл.
А что мешает перед "фиксацией" принятого файла (move_uploaded_file) проверять соответствие id пользователя?
Принятый, но не "зафиксированный" файл хранится во временном хранилище под уникальным именем и ничего чужого затереть не может. А вот куда и под каким именем его потом класть -- полностью во власти вашего кода.
0
Заблокирован
15.12.2024, 03:16  [ТС]
Не понятно, можно поподробнее пожалуйста.

В теории, такая идея у меня.

В .htaccess
Code
1
RewriteRule ^image([0-9])\.png$ image\.php?nm=$1 [NC,L]
В js, отправляем запрос на url site.ru/image4.png, в php подгружаем(отдаем) изображение. В php знаем id пользователя, подгружаем изображение конкретного пользователя.

Добавлено через 5 минут
Перед фиксацией, в php знаем id пользователя, сохраняем файл user1-image.png

Хотя, понял, должно работать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.12.2024, 03:16
Помогаю со студенческими работами здесь

Ошибка ssis пакета (vs2008) при загрузке .csv файла в БД при запуске VS2015
SSIS пакет создан в vs2008. Работал. Сменился MS Server на 2015 и vs2015. Загружаю. Выдает ошибку ] Ошибка: Ошибка при обработке...

Как найти данную вероятность?
Независимые одинаково распределенные случайные величины {X}_{1}, {X}_{2}, {X}_{3},....,{X}_{20} принимают только значения 2 и 3, при этом...

Виснет при загрузке файла
Привет всем =) Проблема: Сделал загрузчик файлов. String URL_DOWNLOAD ="http://сайт.ru/test.txt"; String FILE_NAME =...

Ошибка при загрузке файла
Поставил скрипт http://www.softtime.ru/scripts/upload.php , но при загрузке файла выдает ошибку: Warning:...

Ошибка при загрузке файла
Хочу сделать загрузку файла в папку, но при загрузке выдает ошибку Warning: move_uploaded_file() : The second argument to copy()...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru