PHP script in windows task scheduler

2019-07-29 11:42发布

问题:

I wrote php script which executed successfully as a web page in the browser. But when I schedule the script using windows task scheduler, the script will run successfully (with no error in windows task scheduler) but result nothing in the database; it should update some rows.

Here is the script:

<?php
$con = mysqli_connect("xxx", "xxx", "xxx");
mysqli_select_db($con, "xxx");

$tns = "  
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = xxx))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = xxx.xxx.xxx.xx)
    )
  )
       ";
if (mysqli_connect_errno())
    {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    };
$conn = oci_connect("xxx", "xxx", $tns);

if (!$conn)
    {
    $m = oci_error();
    echo $m['message'], "\n";
    exit;
    }
  else
    {

    $Orcle_Sql = "select ID,E_OFFICIAL_NAME,Password
                           from xxx";
    $array = oci_parse($conn, $Orcle_Sql);
    oci_execute($array);
    while ($row = oci_fetch_array($array))
        {
        $ID = $row[0];
        $Password = $row[2];

        $sql = "UPDATE students_info set password='$Password' WHERE ID= '$ID'";
        $Update_query = mysqli_query($con, $sql);
        }

    }
mysqli_close($con);
oci_close($conn);
?>

Why does running the script behave different in browser than in windows task scheduler?

回答1:

I solve it by running my PHP script through batch file.

and scheduling the batch file in Windows task scheduler.

this post helped me so much:

http://www.devside.net/wamp-server/running-php-scripts-as-cron-jobs-on-windows