RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 492
от 19.10.2006, 09:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 373, Экспертов: 58
В номере:Вопросов: 2, Ответов: 4


Вопрос № 58850: Как организовать надёжную систему авторизации (как для админпанели, так и для юзеров) и какие могут возникнуть проблемы при этом? заранее благодарю...
Вопрос № 58851: Скрипт моего сайта подразумевает загрузку файлов(картинок) на сервер. Их может быть очень много и я не могу всё время глазами следить, чтобы они не повторялись. Можно средствами php проверить, существует точно такой же рисунок в директории или нет?...

Вопрос № 58.850
Как организовать надёжную систему авторизации (как для админпанели, так и для юзеров) и какие могут возникнуть проблемы при этом?
заранее благодарю
Отправлен: 14.10.2006, 05:14
Вопрос задал: Бобровский Сергей Сергеевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Загиров Рустам
Здравствуйте, Бобровский Сергей Сергеевич!
Просто создаёте базу данных с пользователями, в котором определённое поле будет слушить индикатором статуса пользователя на сайте, например admin, user,moderator. При авторизации получаете это значение и записываете в переменную сессии(+имя пользователя и пароль) или(и) каждый раз проверяете, например. И ставите всевозможные проверки где это надо.
---------
Этот мир обречён на нас
©Сергей Маврин
Ответ отправил: Загиров Рустам (статус: Практикант)
Ответ отправлен: 14.10.2006, 15:13


Вопрос № 58.851
Скрипт моего сайта подразумевает загрузку файлов(картинок) на сервер. Их может быть очень много и я не могу всё время глазами следить, чтобы они не повторялись. Можно средствами php проверить, существует точно такой же рисунок в директории или нет?
Отправлен: 14.10.2006, 06:37
Вопрос задал: Бобровский Сергей Сергеевич (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Загиров Рустам
Здравствуйте, Бобровский Сергей Сергеевич!
Можно проверять по размеру файла, и если они совпадают по содержимому файла. Сначала создаёться массив со всеми файлами, в ключах будет имя файла, а в значении размер файла. Далее создаём копию этого массива массив. Пробегаемся по всему оригинальному массиву и сравниваем с копией массива, если файл не обрабатывался, имена разные, размеры одинаковые и содержимое содержимое, то он удаляеться.
Весь вопрос в том, какой файл удалять?? В приведённом скрипте удаляется произвольный файл, но у меня удаляется файл, имя которого лексиграфически больше исходного.

Приложение:

---------
Этот мир обречён на нас
©Сергей Маврин

Ответ отправил: Загиров Рустам (статус: Практикант)
Ответ отправлен: 14.10.2006, 13:40

Отвечает: Jeka911
Здравствуйте, Бобровский Сергей Сергеевич!

К предыдущему ответу могу добавить, что можно использовать сравнение хэш значений файлов. Для получения используем функцию hash_file (string alg, filename);, где alg - алгоритм хэш функции (sha256, md5, ...)
---------
Шахтер - чемпион!!!
Ответ отправил: Jeka911 (статус: 8-ой класс)
Ответ отправлен: 14.10.2006, 21:40
Оценка за ответ: 2
Комментарий оценки:
это ведь каждый файл нужно хэшировать . . а если их тысячи? по-моему, это очень накладно в смысле нагрузки на сервер

Отвечает: PVS
Здравствуйте, Бобровский Сергей Сергеевич!
К сожалению глаз у PHP вообще нет :-(
Как вариант: можете "перегонять" все файлы в один формат и один размер и тогда сравнивать их побитно
Ответ отправил: PVS (статус: Практикант)
Ответ отправлен: 16.10.2006, 10:26
Оценка за ответ: 4


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.37 от 04.10.2006
Яндекс Rambler's Top100

В избранное