[PHP-users 29305] CLI版PHPの自動実行におけるデータベース接続について

katagiri@we-be.net katagiri @ we-be.net
2006年 5月 28日 (日) 18:48:07 JST


こんにちわ!
katagiriと申します。
どなたか教えていただきたいのですが・・・
PHPのCLI版でPHPプログラムをタスクによって自動実行させているのですが、
1)テキストファイルへの書き込みのみなら自動実行できる。
2)データベースへの接続をさせると、内容の書き込みができなくなる。
 または、データベースの内容が取得できなくなっている。
自動実行はしているのですが、データベースとの接続ができていないようです。
バッチファイルによる手動操作では、同じプログラムを起動するとちゃんと動くのですが、
どのように設定したら、よろしいのでしょうか?
環境:PHP4.3.9+MySQL3.23.49+Windows2000Server(IIS5.0)
同じ現象は、PHP4.3.9+MySQL3.23.49+WinXP(apache)でも起きています。
よろしくお願い申し上げます。
タスク実行バッチファイル(auto.bat)
php.exe test.php
test.phpの内容
#!c:\php\cli
<?php
	$fp=@fopen("sample.txt","a") or die();
	$str="書き込みました。".date("Y/m/d D H:i:s",time())."\n";
	fputs($fp,$str);
	//DB接続(テスト表示用)-----------------------------------------
		$dbHandle = mysql_connect("","root","root");
		if ($dbHandle == False) {fputs($fp,"can not connect db\n");	exit;
		}
		$db = "test";
		$sql = "select * from tab1 order by number";
		fputs($fp, "SQL=".$sql."\n");
		$rs = mysql_db_query($db,$sql);
		while($row=mysql_fetch_array($rs)){
			for($j=0;$j<$num;$j++){
				fputs($fp,$row[$j]."\t");
			}											//HTML文を出力 表の改行</tr> を出力
			fputs($fp,"\n");
		}
		fputs($fp,"\n\n");								//HTML文を出力 テーブルの終了を指定
		mysql_free_result($rs);							//結果レコードをメモリから開放
		mysql_close($dbHandle);				
	fclose($fp);
?>


PHP-users メーリングリストの案内

AltStyle によって変換されたページ (->オリジナル) /