Участник
Пользователь
- Сообщения
- 28
- Реакции
- 0
PHP:
function compileSMA($chat_id, $smaFile) {
// Пути
$compilerPath = __DIR__ . "/scripting/amxxpc.exe";
$outputDirectory = __DIR__ . "/scripting/compiled";
// Проверка существования компилятора
if (!file_exists($compilerPath)) {
$mess = "Компилятор не найден по пути: $compilerPath";
saytext($mess, $chat_id);
return;
}
// Проверка прав на выполнение
if (!is_executable($compilerPath)) {
$mess = "Компилятор не имеет прав на выполнение или это не исполняемый файл.";
saytext($mess, $chat_id);
return;
}
if (!is_dir($outputDirectory)) {
mkdir($outputDirectory, 0777, true);
}
// Команда для компиляции
$outputFile = escapeshellarg("$outputDirectory/" . basename($smaFile, '.sma') . ".amxx");
$command = escapeshellcmd($compilerPath) . " " . escapeshellarg($smaFile) . " -o $outputFile";
// Выполняем команду
$output = [];
$returnVar = null;
exec($command, $output, $returnVar);
// Отладочная информация
if ($returnVar !== 0) {
$mess = "Ошибка компиляции: \n";
$mess .= "Команда: $command \n";
$mess .= "Код возврата: $returnVar \n";
$mess .= "Вывод: \n" . implode("\n", $output);
} else {
$mess = "Успешно скомпилировано: " . basename($smaFile) . "\n";
}
saytext($mess, $chat_id);
}
То что получил в ответ
Ошибка компиляции:
Команда: /var/www/user/data/www/сайт.ru/MiApi/scripting/amxxpc.exe '/var/www/user/data/www/сайт.ru/MiApi/scripting/file.sma' -o '/var/www/user/data/www/сайт.ru/MiApi/scripting/compiled/file.amxx'
Код возврата: 126
Вывод:
Как решить данную проблему?