как отобразить диалог, если пользователь не может загрузить файл - PullRequest
1 голос
/ 04 мая 2010

работа с php / html / javascript.

Я пытаюсь найти хороший / лучший подход к тому, чтобы позволить пользователю загрузить файл. у меня может быть традиционная ссылка href, которая взаимодействует с внутренним php-приложением для загрузки файла.

однако, я хочу, чтобы приложение отображало какое-то диалоговое окно / предупреждение, если пользователь не может (на основании acl / permissions) загрузить файл ... это должно быть чем-то вроде ajax, а я не хочу обновлять страницу ...

приветствуются мысли / комментарии / указатели на примеры кода.

спасибо.

-Tom

привет ... больше данных / информации.

в моем тесте я отправляю userID / fileID через запрос к php бэкэнда.

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

поэтому последняя / критическая проверка происходит на заднем конце.

надеюсь, это даст немного больше понимания того, что я хочу сделать / выполнить.

спасибо

-Tom

Ответы [ 2 ]

1 голос
/ 04 мая 2010

AJAX может быть хорошей технологией для использования, если вы ищете обходной путь для страницы, которая не обновляется, но она не должна быть вашим единственным вариантом.

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

В качестве простого примера: включите функции, относящиеся только к администраторам, и отключите функции администратора для обычных пользователей.

Вам не обязательно включать / отключать функции, вы также можете решить, прежде чем пользователь нажмет на ссылки, имеет ли он / она права на это.

С более подробной информацией о том, как устроен ваш проект, мы можем предоставить более краткие ответы.

0 голосов
/ 04 мая 2010

Самый простой способ - вернуть код ответа HTTP 401 («Несанкционированный»). Это приведет к тому, что ваш веб-сервер отобразит страницу ошибки 401, которую вы можете изменить в соответствии с вашим дизайном.

Или, если вы используете AJAX, вы можете проверить код ответа 401 и вызвать для них приятное оповещение, не переходя на другую страницу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...