linux: fedora8
php ver: PHP Version 5.2.6

cronで定期的にasahi.comから天声人語だけ抜き取って自分にメールを送るのと、
バックアップとしてその日の日付の名前でテキストファイルに保存するphpを作ったんですけど

cronが実行すると
cron daemonからメールで
PHP Warning: flock() expects parameter 1 to be resource, boolean given ...
PHP Warning: fputs(): supplied argument is not a valid stream resource in ...
PHP Warning: flock() expects parameter 1 to be resource, boolean given in ...
PHP Warning: fclose(): supplied argument is not a valid stream resource in ...
と返ってき、テキストファイルももちろん作成されておらず、どうも
function write($filename, $input)
{
$input=serialize($input);
$fp=fopen($filename,"w");
flock($fp, LOCK_EX);
fputs($fp, $input);
flock($fp, LOCK_UN);
fclose($fp);
}
というファンクションのfopenの戻り値がfalseでかえってきてるみたいなんですけど

自分でブラウザでそのphpを実行すると問題ないんです、ちゃんとファイルもその日の日付のタイトルで内容も保存されます
どうしたらcronで定期的にやってくれるように問題可決できるんでしょうか?教えてください。