2017-05-25 1 views
0

Ich habe eine Seite, die ich zweimal am Tag auf meinem Server ausführen muss. Ich habe den Cron-Job in meinem cpanel benutzt. Die Seite hat einen API-Aufruf in Javascript und die empfangenen Daten werden in der Datenbank gespeichert. Aufgrund des Grundes, dass ich das Javascript vor dem PHP-Skript ausgeführt habe, ist das Format wie folgenden-Umleiten auf andere Seite in einem Cron-Job

<?php 
    if(isset($_POST['get_data'])) 
    { 
     //INSERT get_data to database 
    } 
    else 
    { 
?> 
    <script> 
     var api_data = //API call to get the data ; 
     $.post("ths_page.php", 
       { 
        get_data: api_data 
       }, 
       function(data,status) 
       { 
       }); 
    </script> 
<?php 
    } 
?> 

Wenn ich die Seite manuell ausführen, werden die Daten gespeichert. Aber ich denke, der Cron-Job führt die Post-Methode nicht aus. Gibt es eine Möglichkeit, es in einem Cron-Job so zu machen? Jede Hilfe wird geschätzt.

+2

Werfen Sie einen Blick auf Curl und machen Sie ein reines PHP-Skript ... –

+0

Javascript wird nicht in CLI arbeiten. Sehen Sie @Jonas Kommentare – Nandakumar

+0

Javascript wird vom Browser ausgeführt. Aber Ihr Skript sendet nicht an einen Browser. – Barmar

Antwort

3

Cron Jobs werden nur reine laufen

PHP CLI-Skripte

Was auch immer nur unter PHP CLI Cronjobs kommt diesen Teil auszuführen.

Ihr JavaScript wird niemals auf Cron-Jobs ausgeführt. Sie müssen eine andere Lösung für Ihre Anforderung finden.

Verwandte Themen