Jump to content


Photo

Duvidas Com Shell_Exec


  • Faça o login para participar
2 replies to this topic

#1 Hykaro HDSites

Hykaro HDSites

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 23/07/2010, 03:28

Olá pessoal do IMasters, meu nome é Hykaro e sou iniciante em PHP.
Tenho um servidor de GTA San Andreas Online.

Ele está hospedado em um VPS, no VPS tem instalado PHP, MySQL.

Queria montar um comando em PHP pra inicializar e parar o servidor.

Achei algumas coisa sobre SHELL_EXEC, mais não entendi como funciona.

Achei o seguinte codigo:

< ? $act=$HTTP_GET_VARS['act'];
// Starting the server...
if ($act=="start")
{
$output = shell_exec("./SEUSERVIDOR.sh start");
echo $output;
}
// Stopping the server...
elseif ($act=="stop")
{
$output = shell_exec("./SEUSERVIDOR.sh stop");
echo $output;
} ?>

Preciso alterar ele para que possa executar um arquivo .exe

O meu servidor HTTP do VPS está em c:\apache2tried\htdocs\

Os arquivos do server estão em C:\server_samp\server1\

O arquivo a ser executado é o server-samp.exe que está dentro da pasta C:\server_samp\server1\

O arquivo teria que chamar ligar.php ou algo parecido, ele teria que fica dentro de c:\apache2tried\htdocs\controle\server1\

Sendo que HTDOCS corresponde a LOCALHOST ou IPDOMEUSERVER.



Desde já agradeço à atenção de todos do forum, fico no aguardo.

Qual coisa me mande um email ou add no msn dj.hykaro@hotmail.com

#2 dddidan

dddidan

    Ativo

  • Usuários
  • 381 posts
  • Sexo:Masculino
  • Localidade:Taboão da Serra - SP

Posted 25/07/2010, 21:49

na verdade... depende do sistema operacional do seu vps.

ja que o arquivo é .exe, provavelmente é alguma versão do windows, certo?

então é simples, e não usaremos o shell_exec, apenas o exec.

<?php
$act=$HTTP_GET_VARS['act'];//recebe a variavel act por meio de uma url enviada provavelmente por um painel de controle
if ($act=="start"){//se o valor de act for start, faz o conteudo do laço
$output = exec("caminho_relativo/server-samp.exe start");//envia para o dos o comando de iniciar o sa-mp
echo $output;
}
// SPara parar o servidor
elseif ($act=="stop"){//Se o conteudo de act for stio entãão ele faz esse outro comando do laço:
$output = exec("caminho_relativo/server-samp.exe stop");//envia para o dos o comando de parar o sa-mp
echo $output;
} ?>


entendeu?

Edição feita por: dddidan, 25/07/2010, 21:54.

Mais vale um Dev C++ na mão do que dois codeblocks voando

PHP - ||||||||||||||| MySql - |||||||||||||||
C/C++ - ||||||||||||||| Oracle - |||||||||||||||
PERL - |||||||||||||||

#3 Hykaro HDSites

Hykaro HDSites

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 26/07/2010, 17:52

dddidan

Tenho um VPS com Windows Server 2003.

Eu pensei em usar o exec(); ou o shell_exec(); mais andei lendo na NET e o pessoal que uso não obiteve muito sucesso.

Eu achei dois codigos na NET, só que tentei tentei e nada.

Tive olhando também que para rodar voce precisa liberar o Safe_Mode do PHP porque ele bloqueia, mais liberei e não deu nada.

O que será que pode ser ?

Desde de já agradeço a atenção.

Se quizer adicionar no MSN é dj.hykaro@hotmail.com




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq