Предложения по созданию системы импорта файлов для управления пользователями - PullRequest
0 голосов
/ 17 мая 2011

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

Наша компания управляет онлайн-продуктом / услугой, которая дает миллионам (теоретически) людей доступ к определенной информации. Мы поддерживаем и онлайн-портал, на котором участники могут регистрироваться самостоятельно, и вся их информация хранится в различных таблицах MySQL и AES, зашифрованных в некоторых случаях с использованием PHP.

В некоторых случаях у нас может быть суб-менеджер, которому принадлежит группа из 10+ человек, которых он / она хочет включить в систему, но не хочет управлять ими по одному. Этот суб-менеджер может загрузить файл CSV или Excel (с определенными именами полей) и, в свою очередь, разрешить что-то в нашей системе для обработки этой информации и размещения в определенных полях. Кроме того, если какое-либо из полей в представленном файле содержит ошибку, ошибка регистрируется, и файл продолжает обрабатываться без проблем, пока загруженный файл не будет завершен.

Как только файл обработан, подробный журнал отправляется суб-менеджеру с количеством добавлений в его / ее учетную запись, а также с любыми проблемами, которые могли возникнуть во время загрузки файла. Аналогичным образом, суб-менеджер может отправить файл «прекращений», который наша система должна быть в состоянии обработать и эффективно прекратить покрытие участника.

Я знаком с загрузкой файлов с помощью PHP, но остальное мне чуждо. У кого-нибудь был опыт в такой системе? Сначала я назвал это «системой управления пользователями», но не уверен, что в этом случае я использую правильную терминологию. Есть ли предпочтительный способ сделать это?

Любые предложения приветствуются.

Наша система основана на стеке LAMP для справки.

Примечание. Меня не интересует создание системы привилегий для входа или членства. Я знаком с этим - больше озабочен перспективой выгрузки и обработки файлов крупного клиента, который может одновременно отправить более 100 участников с конфиденциальной информацией, содержащейся в файле .xls или .csv.

1 Ответ

0 голосов
/ 17 мая 2011

Просто создайте формат файла, которому они должны следовать при загрузке файла:

fname,lname,username,password

Затем, когда они загружают файл, вы одновременно обрабатываете строку файла.

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

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

fname,lname,username,password,ADDED
fname,lname,username,password,ADDED
fname,lname,username,password,ERROR,Duplicate Record
etc.
...