Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите сделать доступ по ID

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
korsika
Отправлено: 21 Февраля, 2020 - 08:31:37
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




Помогите написать скрипт, очень нужна ваша помощь.
Если такое возможно сделать на php.

что есть:
- есть несколько устройств на Android, программа подключаясь к серверу автоматом скачивает файл для чтения.
- в логе Apache фиксируются ID Android подключенных устройств к серверу, т.е. программа стоящая у клиента посылает серверу свои ID.
в таком виде:
CODE (htmlphp):
скопировать код в буфер обмена
  1. 12.13.145.31 - - [20/Feb/2020:07:47:58 +0300] "POST /files/my.txt HTTP/1.0" 200 250 "-" "{\"platform\":\"android\",\"app\":\"proga.di\",\"ver\":\"1.0\",\"cod\":\"123\",\"sdk\":\"14\",\"name_dev\":\"XiPro\",\"id_dev\":\"d93da24fa07bcb9e\"}"


что необходимо:
- прочитать ID клиента из лога Apache или из буфера
- запретить доступ всем ID, кто не в белом списке из файла white.txt
- запрещать подключаться более чем одному устройству с одним и тем же ID.

Всем Спасибо!
 
 Top
LIME
Отправлено: 21 Февраля, 2020 - 22:47:33
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




korsika зачем тебе логи? почему в самом приложении нельзя сделать?
как может приложение ориентироваться на лог если лог может быть написан после самой отработки приложения
чушь несусветная
спроси что конкретно надо а не предполагай решение
 
 Top
korsika
Отправлено: 22 Февраля, 2020 - 07:33:30
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




LIME, нужно сделать доступ к серверу по "белому"списку по ID устройств или другим критериям, по IP не по подходит, т.к. динамические, при этом не привлекать клиента к самостоятельной регистрации.
 
 Top
LIME
Отправлено: 22 Февраля, 2020 - 07:36:37
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Ну так делай
Что пробовал и что не получилось?
Подсказка: гуглить фингерпринт устройства
 
 Top
korsika
Отправлено: 22 Февраля, 2020 - 07:50:28
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




LIME, я не программист, для меня это темный лес, поэтому и попросил тут помощи в написании скрипта.

(Отредактировано автором: 22 Февраля, 2020 - 08:07:52)

 
 Top
LIME
Отправлено: 22 Февраля, 2020 - 07:56:53
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




korsika а я программист
и смею надеятся очень неплохой как минимум
и вангую тебе кучу траблов раз решил самостоятельно делать бэк для мобил
там куча подводных камней
найми когонибудь
сам твой подход к решению от логов заставляет широко улыбаться
сам не потянеш
ответа тут нет и быть не может
не жди
(Добавление)
это сложно если не отвечать буквально на твою дурость
на твой бред можно дать совет
но он тебе не нужно
очнись
 
 Top
korsika
Отправлено: 22 Февраля, 2020 - 08:06:59
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




все ясно, видимо этот раздел не соответствует своему названию или тут просто сидят умники, которые могут только заниматься "не бредом", а чтоб действительно помочь у них нет особого желания или знаний, только амбиции, если я в следующий захочу поболтать, то теперь знаю к кому обратиться ))
удачи.
 
 Top
Vladimir Kheifets
Отправлено: 22 Февраля, 2020 - 08:14:23
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




korsika пишет:
Помогите написать скрипт, очень нужна ваша помощь.
Если такое возможно сделать на php.
что необходимо:
- прочитать ID клиента из лога Apache или из буфера
- запретить доступ всем ID, кто не в белом списке из файла white.txt
- запрещать подключаться более чем одному устройству с одним и тем же ID.
Всем Спасибо!

Добрый день!
1.Конечно, читать что-то из лога Apache не нужно, а под буфером, видимо, подразумеваетстся "чтение" информации в PHP-скрипте из $_SERVER['HTTP_USER_AGENT'], $_REQUEST
2. Что конкретно, в файла white.txt и почему файл,а не таблица в БД?
3. Видимо, небходимо запоминать информацию о заходе клиента, м.б. в том же белом списке, добавив в него флажок захода (активности клиента), который должен обнуляться при выходе клиента(завершения работы скрипта) с помощью register_shutdown_function.
Удачи!

(Отредактировано автором: 22 Февраля, 2020 - 08:19:43)

 
 Top
LIME
Отправлено: 22 Февраля, 2020 - 08:27:01
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




korsika я тебе дельный совет попробовал дать
ты воспринял иначе
слушай тогда гера Кнейфица...он решит))
Vladimir Kheifets без обид...ты молоток
(Добавление)
korsika
Цитата:

Новичок: Подскажите пожалуста самый крепкий сорт дерева! Весь инет перерыл, поиском пользовался!
Старожил: Объясни, зачем тебе понадобилось дерево? Сейчас оно в строительстве практически не используется.
Новичок: Я небоскрёб собираюсь строить. Хочу узнать, из какого дерева делать перекрытия между этажами!
Старожил: Какое дерево? Ты вообще соображаешь, что говоришь?
Новичок: Чем мне нравиться этот форум - из двух ответов ниодного конкретного. Одни вопросы неподелу!
Старожил: Не нравится - тебя здесь никто не держит. Но если ты не соображаешь, что из дерева небоскрёбы не строят, то лучше бы тебе сначала школу закончить.
Новичок: Не знаите - лучше молчите! У меня дедушка в деревянном доме живёт! У НЕГО НИЧЕГО НЕ ЛОМАЕТСЯ!!!
Но у него дом из сосны, а я понимаю, что для небоскрёба нужно дерево прочнее! Поэтому и спрашиваю!!! А от вас нормального ответа недождёшся!!!
Прохожий: Самое крепкое дерево - дуб. Вот тебе технология вымачивания дуба в солёной воде, она придаёт дубу особую прочность:
Новичок: Спасибо, братан! То что нужно!!!


http://forum.php.su/topic.php?forum=...v=l
 
 Top
korcika
Отправлено: 22 Февраля, 2020 - 18:11:04
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




Vladimir Kheifets пишет:
1.Конечно, читать что-то из лога Apache не нужно, а под буфером, видимо, подразумеваетстся "чтение" информации в PHP-скрипте из $_SERVER['HTTP_USER_AGENT'], $_REQUEST
у меня был ранее подобный скрипт на C# для игры, он по такому же принципу работал, возможно на php есть какие то критические ограничения, но все же.
Vladimir Kheifets пишет:
2. Что конкретно, в файла white.txt и почему файл,а не таблица в БД?
имя файла как пример, в нем ручками я заношу ID клиентов с новой строки
Vladimir Kheifets пишет:
3. Видимо, небходимо запоминать информацию о заходе клиента, м.б. в том же белом списке, добавив в него флажок захода (активности клиента), который должен обнуляться при выходе клиента(завершения работы скрипта) с помощью register_shutdown_function.
тут я не силен
спасибо за ответы

меня больше интересует пример

пришлось зарегистрироваться еще раз, потому как форум настроен а бы как (

очень прошу, не выносите мозги, просто помогите скриптом )

(Отредактировано автором: 23 Февраля, 2020 - 14:24:33)

 
 Top
Vladimir Kheifets
Отправлено: 23 Февраля, 2020 - 17:52:31
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




korcika пишет:
меня больше интересует пример
очень прошу, не выносите мозги, просто помогите скриптом )

Добрый день!
К сожалению, у меня не было возможности показать окончательное решение.
См. несколько функций, которые Вы можете использовать и доработать по своему усмотрению.
1. CheckEnv($buf) проверяет данные реквеста одинаковые для всех пользователей тонкого клиента на андроиде.
2. idInFileErr($ID,$file) сранивает ID из реквеста с данным из файла white.txt, например
Цитата:
d93da24fa07bcb9a
d93da24fa07bcb9b
d93da24fa07bcb9c
d93da24fa07bcb9e

3.setIdCounter($ID,$file,$shutdown=null) модифицирует запись в файле white.txt для заданного например ID d93da24fa07bcb9e,
Цитата:
d93da24fa07bcb9a
d93da24fa07bcb9b
d93da24fa07bcb9c
d93da24fa07bcb9e;1

Если задан параметр $shutdown=true, изменяет запись на d93da24fa07bcb9e;0
Спойлер (Отобразить)
м.б это немного Вам поможет...
Удачи!

(Отредактировано автором: 23 Февраля, 2020 - 17:52:49)

 
 Top
korcika
Отправлено: 23 Февраля, 2020 - 21:26:04
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




Vladimir Kheifets, Большой Спасибо за пример!
но похоже ничего не получится, т.к. к скрипту должно быть обращение устройства при подключении к серверу, чтоб он заработал, а устройство при подключении сразу обращается к файлу и скачивает его, я как то упустил эту проблему (

есть ли другие варианты, например постоянно мониторить подключающиеся устройства и затем уже выполнять скрипт?
 
 Top
Vladimir Kheifets
Отправлено: 24 Февраля, 2020 - 08:14:26
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




korcika пишет:
Vladimir Kheifets, Большой Спасибо за пример!
но похоже ничего не получится, т.к. к скрипту должно быть обращение устройства при подключении к серверу, чтоб он заработал, а устройство при подключении сразу обращается к файлу и скачивает его, я как то упустил эту проблему (

есть ли другие варианты, например постоянно мониторить подключающиеся устройства и затем уже выполнять скрипт?

Для того, чтобы мониторить клиента на сервере при получение реквеста от клиента, на сервере должен запускать скрипт (не "затем"), который должен использовать функции, которые я Вам показал, но и самое главное проверять отключение/неактивность клиента(shutdown).
Предполагаю, что в Вашем случае register_shutdown_function не буду надёжно работать.
Поэтому нужно подумать о том, как отправлять shutdown request со стороны клиента, по клику на кнопку "выйти".

(Отредактировано автором: 24 Февраля, 2020 - 08:18:14)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB