2014-02-03 2 views
2

Я пытаюсь загрузить веб-страницу на своем собственном сервере, на которой будет запущен скрипт .bat (на том же сервере), как показано ниже.Запуск сценария .bat с веб-страницы .php

Когда я обращаюсь к странице, названной test.php, она отображает «СДЕЛАЙТЕ ЭТО!» и когда я нажимаю на него, он просто отображает содержимое в файле .bat, а не выполняет его на сервере ...

Что мне нужно для настройки на сервере, я предполагаю, в настройках PHP, чтобы заставить это запустить сценарий, а не просто отображать его на веб-странице?

Для этого вопроса я доволен последствиями для безопасности того, что я делаю.

Я запускаю Windows-машину с IIS и PHP.

<html> 
    <head> 
     <title>Restarting</title> 
    </head> 
    <body> 
    <?php 
     if(isset($_POST['submit'])) 
     { 
      echo exec('c:\scripting.bat'); 
      echo "Done!"; 
     } else { 
      // display the form 
    ?> 
    <form action="" method="post"> 
    <input type="submit" name="submit" value="DO IT!"> 
    </form> 
    <?php 
     } 
    ?> 
    </body> 
</html> 

ответ

2

Я думаю, что линия echo exec('c:\scripting.bat'); вызывает у вас проблемы. Попробуйте выполнить его без инструкции echo.

Если вы пытаетесь увидеть выход функции, вы должны использовать второй параметр функции: &$output, в соответствии с самой документацией. See it in the docs here.

Я надеюсь, что это будет вам полезно! : D

+1

Благодарим вас, что эхо вызывало вывод на веб-странице, но проблема с ним не работала в том, что .bat, похоже, должен находиться в папке inetpub, откуда находится страница ... Спасибо ! – omega1

+0

такой же проблема для меня. вы исправляете свою проблему? вызвать файл bat с веб-страницы? @ omega1 – Karthi

+0

Здравствуйте, Да, я решил, файл .bat должен быть внутри папки inetpub, а затем он сработал. Я не знаю, может ли он работать с папкой .bat, расположенной в другом месте, но это решило мои потребности. – omega1

Смежные вопросы