Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   exec in PHP-Script geht nicht (https://www.delphipraxis.net/54648-exec-php-script-geht-nicht.html)

noHuman 8. Okt 2005 19:11


exec in PHP-Script geht nicht
 
Hi!

ich habe das folgende PHP-Script:

Code:
<?php
  if (!isset($_SERVER['PHP_AUTH_USER']))
  {
       Header("WWW-Authenticate: Basic realm=\"VNC Shell Control by Wolfgang\"");
       Header("HTTP/1.0 401 Unauthorized");
       echo "Der Zugriff wurde verweigert!\n";
       exit;
  } 
  else
  {
       /*

             Teil der kontrolliert das der Benutzer berechtigt ist!

       */
   
 
    if ( isset($_GET['shutdown']) || isset($_GET['reboot']) || isset($_GET['standby']) )
    {
       if ( isset($_GET['shutdown']) )
       {
         // Parameter -f : Alle Prozesse beenden
         exec('winend.exe -f -s');  // <!----------------  Hier
         exit;
       }
       elseif ( isset($_GET['reboot']) )
       {
         // Parameter -f : Alle Prozesse beenden
         exec('winend.exe -f -r');  // <!----------------  Hier
         exit;
       }
       elseif ( isset($_GET['standby']) )
       {
         // Parameter -f : Alle Prozesse beenden
         exec('winend.exe -f -b');  // <!----------------  Hier
         exit;
       }
    }
    else
    {
      echo "<script language='JavaScript'>alert('Kein Modus!');</script>";
    }
  }
?>
Ihr seht, überall wo das
Code:
// <!----------------  Hier
ist, ist in "exec" Befehl!

Diese "exec"'s werden jedoch nicht ausgeführt!

Es gibt keine Fehler und keinen Safe Mode ( PHP ist in der Standart-Konfiguration )!

Das Script soll ein Netzwerk-Server herunterfahren/neustarten/Standby setzten:
Code:
[url]http://192.168.0.8/winend.php?shutdown=yes[/url] // Herunterfahren
Danke im Voraus!

PS: Ich weiss , der Code ist schlampig programmiert, dies wird noch behoben!

Eichhoernchen 8. Okt 2005 19:48

Re: exec in PHP-Script geht nicht
 
Hmm, ich kenne mich jetzt nicht so gut damit aus, aber ich würde glatt sagen das vielleicht die Pfadangabe zu dem Programm winend.exe fehlt und er es deswegen nicht ausführen kann!

noHuman 8. Okt 2005 20:03

Re: exec in PHP-Script geht nicht
 
Ich habe es jetzt mit

Code:
C:\WINDOWS\winend.exe
und

Code:
C:/WINDOWS/winend.exe
probiert.

:( Ohne Erfolg :(

omata 8. Okt 2005 21:25

Re: exec in PHP-Script geht nicht
 
Du musst den Slash quoten.

Delphi-Quellcode:
C://Windows//winend.exe
MfG
Thorsten

noHuman 9. Okt 2005 08:47

Re: exec in PHP-Script geht nicht
 
@omata

Nein, funktioniert leider auch nicht!

omata 9. Okt 2005 17:39

Re: exec in PHP-Script geht nicht
 
Hallo,

ich habe auch lange rumprobiert, bis sowas ging.
Was für eine Anwendung willst du da den starten? Was ist winend.exe?

Ich habe bei mir nur eine Konsolenanwendung benutzt.

MfG
Thorsten

HERMES 9. Okt 2005 23:40

Re: exec in PHP-Script geht nicht
 
Der Benutzer in dessen Kontext der Webserver läuft muss auch das recht haben diese anwendung zu starten.

yankee 10. Okt 2005 01:32

Re: exec in PHP-Script geht nicht
 
Liste der Anhänge anzeigen (Anzahl: 1)
was ist winend.exe für ein Programm? Hast du das selbst geschrieben? Wenn es auf deinem Server bei dir zu Hause läuft, beobachte einfach mla, was auf deinem Server passiert. Das Programm sollte sich nämlich öffnen, wie, wenn du es ganz normal starten würdest. Schreib doch einfach mit in Delphi (oder irgendwas anderem) eine einefach Konsolenanwendung, die nur "Hello world" oder sowas ausgibt. Ich mache es dir einfach (in Dev-C++ ist so ein Programm nämlcih 3 Mausklicks) und hänge dir ein Programm an, welches nicht anderes macht als "Hello world" auszugeben. Probier das mal mit passthru() in PHP auszuführen. Dann sollte dein Script nämlich Hello world ausgeben.
Um zu probieren, ob du den Dateipfad richtig angegeben hast, schreib einfach mal das:
if file_exists('Dateipfad') print('Dateipfad korrekt!');
in dein PHP-Skript.
Prüfe mal in der php.ini, ob exec wirklich erlaubt ist...

gsh 4. Nov 2005 22:43

Re: exec in PHP-Script geht nicht
 
Hi

Ich weiss des Thema ist etwas älter aber ich genau des gleiche Problem und bin trotz dieses Threads nicht zu einer Lösung gekommen.
Ich hab alles probiert aber ich bekomme immer den Fehler:
Zitat:

Dateipfad korrekt!
Warning: passthru() [function.passthru]: Unable to fork [ReBootMe.exe] in C:\Server\wwwroot\ReBootMe\index.php on line 9
QuellCode:
Code:
<?
if (file_exists('ReBootMe.exe'))
{
  echo 'Dateipfad korrekt!';
} else
{
  echo "Nich da";

passthru("ReBootMe.exe");
?>

Vjay 4. Nov 2005 23:38

Re: exec in PHP-Script geht nicht
 
Mh, eine Vermutung ist einfach mal, unter welchem "Konto" läuft dein PHP denn?

Apache als Dienst? Könnte evtl. damit zusammen hängen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz