lutskboy

lutskboy
Рейтинг
173
Регистрация
22.11.2013
LEOnidUKG #:
Можно пример

script2.php 

<?php

exec('myprogram arg1 arg2');

Владимир #:
так вы должны сравнивать не с юзером, который запускает, а с командой из колонки comm, тогда всё ок будет

запуская  script.php через веб с браузера нет нормального pid  как из консоли. 

php script.php

он всегда один и тот же .у меня  2405 . и не несет полезной для меня информации

fastuser    2405  0.0  1.8 693076 34100 ?        S    14:03   0:08 /opt/php74/bin/php-cgi php

и так если с консоли запуск. тут есть что то

root        9518  0.1  1.1 402816 21536 pts/0    S+   19:22   0:00 php /var/www/fastuser/data/www/сайт.vip/email.php 

Владимир #:

можно ещё вот так попробовать

1 - в с++ проге  определяете pid по getpid()

2 - в c++ проге запускаете системную команду

ps xao pid,ppid,pgid,sid,comm

там будет весь список процессов, вместе с pid и parent pid

в полученном списке находите по pid программы parent pid (ppid), и если в списке есть pid, соответствующий  ppid, то смотрите, пхп или нет

немного уточню. мне нужно запускать программу  именно с сайта  http://site.ru/script.php и файла  script.php . а не с консоли bash sh ...

 а разве я не могу зайти под именем php-fpm или cgi  или кто там его запускает и запустить от его имени? это уже не то что мне нужно

chaturanga #:

ключом может быть некий хеш, создаваемый скриптом, а-ля md5(pid) - алгоритм придумайте любой
его же и сверяйте в программе


каким скриптом. там код открытый. таким образом можно программу запустить и з 2.php просто добавив сверху етот алгоритм

chaturanga #:
в программе проверьте соответсвие аргумента  --from-script его значению

ето же не значит что я  myprogram запустил с  script.php

может в терминале . а может и з другого скрипта . 1.php

Владимир #:
когда запускаете из пхп программу, то можете получить её pid и записать во временный файл, а из проги проверить по этому pid, совапдает ли с pid программы

надо попробовать. 

Владимир #:
можно по pid

pid не подходит. я в консоли могу его запустить  а не с  script.php и получу pid и передам его myprogram. 

Artisan #:
Передавайте при запуске уникальный случайный код, и контрольный код,
дело в том что script.php тут открытый код. его все видят.  myprogram нет. тут байт код.
Genius Ideaing #:
подпись (caption) ограничена 100 символами.

вот пример https://skr.sh/sPByTp9hxkg

я делал плагин для дле.  sendPhoto method. меня и 1000 устраивает. и ты так не сделаешь чтоб было больше

делай 2 метода. фото и текст. но ето уже не то

lutskboy #:
sendPhoto method
                $request = [
                        'chat_id' => TG_CHAT_ID,
                        'parse_mode' => 'HTML',
                        'caption' => trim($tg_text)
                ];

$request[' photo '] = curl_file_create(/full/path/to/image);

Всего: 829