Hi,
also mein Problem ist das er die Datei nicht ausführt. So ausführen per Putty klappt der Befehl.
Aber nicht über PHP.
PHP
if(isset($_POST['sdateien']))
{
if($_POST['ip'] == $cf['ip'][0])
{
$cmd = 'sudo -u samp /home/samp/createserver.sh '.$_POST['Version'].' '.$_POST['Port'].'';
} else
if($_POST['ip'] == $cf['ip'][1])
{
$cmd = 'sudo -u samp /home/samp/createserver2.sh '.$_POST['Version'].' '.$_POST['Port'].'';
}
$out = ServerCore::RunCommand($cmd, "proc");
echo 'sdateien '.$cmd.' | '.$out.'';
}
Alles anzeigen
PHP
class ServerCore
{
function RunCommand($cmd, $mode = '')
{
global $serverversion;
if($serverversion == "win")
{
$cmdline = "cmd /C $cmd";
if($mode == 'FG')
{
$outputfile = EXEC_TMP_DIR."\\".time().".txt";
$cmdline .= " > $outputfile";
$m = true;
}
else $m = false;
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run($cmdline, 0, $m);
if($outputfile)
{
$retStr = file_get_contents($outputfile);
unlink($outputfile);
}
else $retStr = "";
return $retStr;
}
else
{
if($mode == 'FG') { exec($cmd, $output); }
elseif($mode == 'proc') { @ob_clean; proc_close(proc_open($cmd, array(), $unused)); $output = @ob_get_contents(); }
else { exec($cmd); $output = ""; }
return $output;
}
}
}
Alles anzeigen
Ich finde einfach den Fehler nicht ?