Код: Выделить всё
safe_exec('"/usr/local/bin/noolite -api -set_ch 1 -"'.$params['VALUE']);
В чём ошибка ? Из консоли работает, а тут ноль эфекта
Модератор: immortal
Код: Выделить всё
safe_exec('"/usr/local/bin/noolite -api -set_ch 1 -"'.$params['VALUE']);
С правами всё нормально.dmw писал(а):Прав на запуск не хватает. Дайте их через консоль:
chmod a+s /usr/local/bin/noolite
Код: Выделить всё
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -set_ch 1 50');
Код: Выделить всё
if ($params['VALUE']) {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1');
} else {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1');
}
Ну... вопервых неScoot писал(а):а вот это уже не работаетКод: Выделить всё
if ($params['VALUE']) { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1'); } else { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1'); }
Код: Выделить всё
if ($params['VALUE']) {
Код: Выделить всё
if (isset($params['VALUE'])) {
Код: Выделить всё
$param = isset($params['VALUE']) ? ' -on_ch1' : ' -off_ch1';
$commandToRun = '/usr/bin/sudo /usr/local/bin/noolite -api' . $param;
echo exec($commandToRun);
Отличаются только тем, что в первом примере устанавливается мощность, а во втором вкл/выкл.LutsenkoDenis писал(а):Ну... вопервых неScoot писал(а):а вот это уже не работаетКод: Выделить всё
if ($params['VALUE']) { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1'); } else { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1'); }
aКод: Выделить всё
if ($params['VALUE']) {
Во вторых у тебя в приведённых примерах отличаются комманды. визуально.Код: Выделить всё
if (isset($params['VALUE'])) {
Попробуй вот так:И с пом. DebMes посмотри каждую строку. Если всё совпадёт с рабочим вариантом, то гуд.Код: Выделить всё
$param = isset($params['VALUE']) ? ' -on_ch1' : ' -off_ch1'; $commandToRun = '/usr/bin/sudo /usr/local/bin/noolite -api' . $param; echo exec($commandToRun);
Там и естьLutsenkoDenis писал(а):я не говорил что $params['VALUE'] не будет работать, просто с помощью isset правильней проверять переменные на их существование.
> Running script: OnOffLustraCommand unknown, как бы говорит о том что скрипт не понял что вы от него хотите. или не нашел что делать с параметром OnOffLustra
Код: Выделить всё
if ($params['VALUE']) {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1');
} else {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1');
}
Я конечно всё понимаю, но за весь разговор вы привели аж 4 разных примера кода который у вас то работает то нет.Scoot писал(а): Там и естьЯ честно говоря уже не понимаю куда копатьКод: Выделить всё
if ($params['VALUE']) { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1'); } else { echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1'); }
Поял только, что в $params['VALUE']) (поскольку без него всё работает)
Код: Выделить всё
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -set_ch 1 50');
Код: Выделить всё
if ($params['VALUE']) {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -on_ch1');
} else {
echo exec('/usr/bin/sudo /usr/local/bin/noolite -api -off_ch1');
}
Код: Выделить всё
На http://127.0.0.1/objects/?script=OnOffLustra пишет Request: &script=OnOffLustra Running script: OnOffLustraCommand unknown
Код: Выделить всё
safe_exec('"/usr/local/bin/noolite -api -set_ch 1 -"'.$params['VALUE']);
Код: Выделить всё
/usr/bin/sudo /usr/local/bin/noolite -api -set_ch 1 50
Код: Выделить всё
safe_exec('"/usr/local/bin/noolite -api -set_ch 1 -"'.$params['VALUE']);
Код: Выделить всё
safe_exec('"/usr/local/bin/noolite -api -set_ch 1 "'.$params['VALUE']);