什么是批处理脚本代码和设置成功执行PHP脚本

时间:2012-10-03 13:07:19

标签: php batch-file path cron

我有一个PHP脚本连接到数据库并进行插入/更新,显然,如果我使用浏览器运行脚本,它会成功执行,将其移至生产中,这不会发生。

我想问一下如何使用批处理脚本调用php.exe,然后运行我创建的php脚本来执行插入/更新。

我有ff:setup

我正在使用xmpp,使用ff:

webdirectory / cronjobs / cronjob.php - >插入和更新 webdirectory / cronjobs / runscript.bat - >将运行cronjob.php

runscript.bat
@echo off
php.exe -f ../webdirectory/cronjobs/cronjob.php

cronjob.php

include_once('../db/dbcon.php');
$test = $db->run();
.... insert/update codes

此外,当我尝试使用Win7的命令行直接运行批处理脚本时,使用 drive:> /xampp/php/php.exe -f drive:> xampp / htdocs / webdirectory /cronjobs/cronjob.php

我得到了ff:错误;

Warning: include_once(): Failed opening '../webdirectory/db/dbcon.php' for inclusion (include_path='.; E:\xampp\php\PEAR') in E:\xammp\htdocs\webdirectory\db\dbcon.php on line xx

我猜相对文件路径失败了;后续问题,这是否意味着我必须编辑我的脚本文件并将路径设置为绝对?我应该使用 e:/xampp/htdocs/webdirectory/db/dbcon.php 而不是 ../webdirectory/db/dbcon.php ?对我来说看起来很糟糕......

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

将目录更改为脚本的位置,以便在从脚本目录外部执行时使所有相对路径都起作用

<强> cronjob.php

chdir(__DIR__);
include_once('../db/dbcon.php');