Shell Script mit Parametern aufrufen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Shell Script mit Parametern aufrufen

    Hi,

    folgendes Problem: Ich möchte aus einem PHP-Script gerne ein Shell Script aufrufen, dem vor dem Aufruf noch 2 Parameter übergeben werden.
    in der Kommandozeile sieht das ganze so aus:
    "script.sh param1 param2"

    Die Parameter bekomm ich über ein Formular und wollte sie mit shell_exec() weitergeben, das hat aber nicht funktioniert

    Code:

    PHP-Code:
        if(is_executable("files/script.sh")){
            
    shell_exec("files/script.sh"." ".$new_id." ".$new_mail);
            echo 
    "DONE!";
        }
        else{
            echo
    "ERROR !";
        } 
    Könnt ihr mir da weiterhelfen?
    Danke und Gruß!
    Zuletzt geändert von KrazyKingKool; 24.04.2008, 14:54.

  • #2
    hmm also ich weiß ehrlich gesagt nicht genau, wo dein Fehler ist, meiner Meinung nach sollte das so funktionieren.....

    aaaaber etwas anderes stößt mir ganz schön bitter auf:
    Du bekommst die Daten aus einem Formular und machst dann ein shell_exec mit diesen daten. Du solltest auf JEDEN FALL escapeshellarg benutzen.
    signed oder unsigned... das ist hier die Frage

    Kommentar


    • #3
      Und es kommt keine Fehlermeldung?
      [FONT="Helvetica"]twitter.com/unset[/FONT]

      Shitstorm Podcast – Wöchentliches Auskotzen

      Kommentar


      • #4
        Oh, okay. Hab ich noch nie gehört, aber danke

        Geholfen hats trotzdem nichts. Hab die Werte aus dem Formular mit der Funktion vorher aufgefangen, immer noch Error

        PHP-Code:
        $new_id  escapeshellarg($_POST['Id']);
        $new_mail escapeshellarg($_POST['Email']); 

        Kommentar


        • #5
          Original geschrieben von unset
          Und es kommt keine Fehlermeldung?

          Er springt halt in den false-Teil der if, aber error_reporting(E_ALL); gibt kein Fehler aus, nein

          Kommentar


          • #6
            mach doch mal ein "echo shell_exec....", dann bekommst du bestimmt irgend eine Ausgabe...
            signed oder unsigned... das ist hier die Frage

            Kommentar


            • #7
              Original geschrieben von case
              mach doch mal ein "echo shell_exec....", dann bekommst du bestimmt irgend eine Ausgabe...
              echo shell_exec

              bringt

              Notice: Use of undefined constant shell_exec - assumed 'shell_exec' in C:\Documents and Settings\i001158\Desktop\DEV\PHP\weblogin\main\insert.php on line 24

              Kommentar


              • #8
                Du sollst das echo vor deinen Funktionsaufruf setzen!
                [FONT="Helvetica"]twitter.com/unset[/FONT]

                Shitstorm Podcast – Wöchentliches Auskotzen

                Kommentar


                • #9
                  PHP-Code:
                  var_dump(is_executable("files/script.sh")); 
                  ergibt wohl false. Kann es sein, dass die Funktion recht hat und das Script wirklich nicht ausführbar ist
                  Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                  [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                  Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                  Kommentar


                  • #10
                    Welche Funktion hat das behauptet?
                    [FONT="Helvetica"]twitter.com/unset[/FONT]

                    Shitstorm Podcast – Wöchentliches Auskotzen

                    Kommentar


                    • #11
                      Welche Funktion hat das behauptet?
                      Keine Funktion sondern der Topicstarter
                      Er springt halt in den false-Teil der if,...
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar


                      • #12
                        Ach, das hab ich tatsächlich überlesen
                        [FONT="Helvetica"]twitter.com/unset[/FONT]

                        Shitstorm Podcast – Wöchentliches Auskotzen

                        Kommentar

                        Lädt...
                        X