Chris: Wie richte ich unter Windows Server "Cronjobs" ein?

Nabend,

ich weiß, Cronjobs an sich gibt es nur unter Linux. Aber ich suche ein Pendant für Windows... im Grunde möchte ich einfach ein bestimmtes PHP-Script alle 15 Minuten ausgeführt haben. Bisher wird dieses Script automatisch ausgeführt, sobald ein User die Startseite öffnet, das ist mir bei vielen gleichzeitigen User etwas zu heftig.

"Geplante Tasks" ist wohl nicht das richtige dafür, oder? Was gibts sonst noch?

Besten Gruß vom Chris

  1. "Geplante Tasks" ist wohl nicht das richtige dafür, oder? Was gibts sonst noch?

    geplante tasks ist genau das richtige dafür

    1. geplante tasks ist genau das richtige dafür

      Und wie führe ich damit ein PHP-Script aus? Mozilla Firefox als Programm wählen und als Parameter die URL übergeben? Das kanns doch nicht sein, oder?

      1. Hallo,

        geplante tasks ist genau das richtige dafür

        Und wie führe ich damit ein PHP-Script aus? Mozilla Firefox als Programm wählen und als Parameter die URL übergeben? Das kanns doch nicht sein, oder?

        Nein. Wenn PHP auf dem gleichen Rechner installiert ist, kannst Du durchaus auch \pfad\zu\php.exe \pfad\zum\script ausführen lassen (vorher auf der Kommandozeile cmd.exe testen!)

        Beachte aber, dass für PHP-Scripte, die so ausgeführt werden, PHP *NICHT* extra in das Verzeichnis des PHP-Scripts wechselt, d.h. ein chdir(dirname(__FILE__)); ganz oben im Script, das Du direkt ausführen willst, wäre angebracht, wenn Du nicht willst, dass include() Amok läuft.

        Viele Grüße,
        Christian

        1. Nein. Wenn PHP auf dem gleichen Rechner installiert ist, kannst Du durchaus auch \pfad\zu\php.exe \pfad\zum\script ausführen lassen (vorher auf der Kommandozeile cmd.exe testen!)

          Beachte aber, dass für PHP-Scripte, die so ausgeführt werden, PHP *NICHT* extra in das Verzeichnis des PHP-Scripts wechselt, d.h. ein chdir(dirname(__FILE__)); ganz oben im Script, das Du direkt ausführen willst, wäre angebracht, wenn Du nicht willst, dass include() Amok läuft.

          Ah, vielen Dank! Wusste nicht, dass man mit der php.exe direkt php-Dateien aufrufen kann. :-)

          Grüße
          Chris

          1. Ah, vielen Dank! Wusste nicht, dass man mit der php.exe direkt php-Dateien aufrufen kann. :-)

            Dann solltest du dich mal mit den drei Arten von PHP befassen.

            Apache-Modul
            CGI
            CLI (das Kommandozeilentool)

            Jedes hat seine Vorzüge und seine Nachteile, aber jedes hat beim entsprechenden Anwendungsfall seine Berechtigung ;)

        2. Und wie führe ich damit ein PHP-Script aus? Mozilla Firefox als Programm wählen und als Parameter die URL übergeben? Das kanns doch nicht sein, oder?
          Nein. Wenn PHP auf dem gleichen Rechner installiert ist, kannst Du durchaus auch \pfad\zu\php.exe \pfad\zum\script ausführen lassen (vorher auf der Kommandozeile cmd.exe testen!)

          ansonsten kannst die online-ressource auch durch ein kleines vb-script aufrufen

            
            function xmlhttp(URL)  
               xmlhttp = null  
               Set xml = CreateObject("Microsoft.XMLHTTP")  
               xml.open "GET", URL, false  
               on error resume next  
               xml.send ""  
            end function  
            
            xmlhttp("http://example.com/?foo=bar")  
          
          
          1. ansonsten kannst die online-ressource auch durch ein kleines vb-script aufrufen

            function xmlhttp(URL)
                 xmlhttp = null
                 Set xml = CreateObject("Microsoft.XMLHTTP")
                 xml.open "GET", URL, false
                 on error resume next
                 xml.send ""
              end function

            xmlhttp("http://example.com/?foo=bar")

              
            Auch gut zu wissen, grade wenn PHP nicht auf dem eigenen Rechner/Server läuft. Bei mir tut es das, daher werd ich das mit der php.exe machen.  
              
            Danke ;)  
              
            Grüße  
            Chris
            
  2. ich weiß, Cronjobs an sich gibt es nur unter Linux.

    Wer hat dir das erzählt?
    Fütter Google mal mit "Z-Cron" und du wirst sehen, welchen Irrtum du aufgesessen bist.