2012-10-03 21 views
0

我有一個PHP腳本,連接到數據庫,並插入/更新,顯然,如果我使用瀏覽器運行腳本,它執行成功,移動它進入生產這不會發生。什麼是批處理腳本代碼和設置,以成功執行一個PHP腳本

我想問一下如何使用批處理腳本調用php.exe,然後運行我創建的用於執行插入/更新的php腳本。

我有FF:設置

我使用的XAMPP,與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的命令行運行批處理腳本,使用驅動器:>/XAMPP/PHP/php.exe的-f驅動器: > XAMPP/htdocs中/ webdire ctory/cronjobs/cronjob.php

我得到ff:error;

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 

我猜相對文件路徑失敗;後續問題tho,這是否意味着我必須編輯我的腳本文件並將路徑設置爲絕對路徑?而不是使用../webdirectory/db/dbcon.php,我應該使用e:/xampp/htdocs/webdirectory/db/dbcon.php?看起來對我來說是一件壞事...

有人能請幫忙嗎?

+0

檢查我的答案在這裏的http:// stackoverflow.com/questions/12297096/php-require-in-different-folders/12297191#12297191 – Hawili

回答

1

改變目錄到腳本的位置,使當從腳本的目錄外beeing執行的所有相對路徑工作

cronjob.php

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