60734
Goto Top

Programm mit PHP starten

Hallo Leute!
Ich habe einen Webserver mit dyndns, win xp und Apache.
Ich habe mir jetzt einen login gebaut und möchte, dass sich der Webserver per Knopfdruck herunterfährt.
Dazu habe ich eine Batch geschrieben (shutdown.bat).

shutdown.bat----
@echo off
shutdown -s -t "10"

Ich habe mir die Batchdatei mit dem f2ko Converter in eine exe umwandeln lassen und wenn ich draufklicke funktioniert des auch.


Jetzt habe ich ein PHP Skript geschrieben

<?php
exec('"c:\shutdown.exe"')
?>

leider funktioniert das aber nicht.

Vielleicht kann mir ja einer helfen.

Content-Key: 80278

Url: https://administrator.de/contentid/80278

Printed on: April 25, 2024 at 21:04 o'clock

Member: masterG
masterG Feb 08, 2008 at 19:32:29 (UTC)
Goto Top
warum exec("shutdown.exe"); ich dachte es ist ein bat...

masterG
Mitglied: 60734
60734 Feb 08, 2008 at 22:09:04 (UTC)
Goto Top
ich hab die Datei ja mit dem batch to exe Converter umconvertiert in ne .exe
Aber das geht irgendwie net
Member: Arano
Arano Feb 09, 2008 at 10:12:56 (UTC)
Goto Top
Hallo Simpson,

warum konvertierst diu die BAT denn in eine EXE, bei mir funktioniert das auch als BAT!
Ich habe unteranderem folgendes im einsatz, ein BATCH-File das die Prozessliste nach einem Prozess (Apache / httpd.exe) durchsucht und bei dessen vorkommen die Variable "status" mit "online" füllt, die sonst "offline" enthält. Am Ende wird die Variable ausgegeben.
@echo off
set status=offline

for /F "tokens=1-7" %%a in ('tasklist /v') do (  
   if "%%a"=="httpd.exe" set status=online  
   )
echo %status%
In PHP sieht das ganze so aus, eine Variable "$https" in der die Ausgabe des per exec aufgerufenen Programms geschrieben wird.
<?php
  $https=exec("http_status.bat");  
?>
Später im PHP-Script gebe ich dann die Variable als Status des HTTP-Servers aus.

Die BAT- und PHP-Dateien liegen bei mir im selben Verzeichnis

Vieleicht hilft dir das ja weiter, ansonstem mal probieren ob es hilft wenn du in deiner BAT-Datei sozusagen den Absolutenpfad zur shutdown.exe mitangiebst
@echo off
C:\
WINDOWS\system32\shutdown.exe -s -t "10"  
Habe das allerdings jetzt nicht ausprobiert *fg*

Viel Erfolg
Gruß Arano