ネットマニアさんでPHPウェブログシステム3 μ-s ver2.09β(FLEUGELzさんのカスタマイズ版)のダウンロードをしてブログの運用をしているのですが、index.rdfを編集しようとすると


Warning: fread(): Length parameter must be greater than 0. in /virtual/・・・/public_html/blog/include/system.php on line 362

というエラーが出ます。
RSSリーダーで読めるようにしたいのですが、このエラーが原因なのか記事の取得ができません。解決方法を教えてください。
「Warning: fread(): Length parameter must be greater than 0」でGoogle検索すると多くのサイトでこのエラーメッセージが表示されているようなのですが、このエラーの意味と改善方法のみでも結構ですので、ご教授下さい。
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:tonolove No.1

回答回数158ベストアンサー獲得回数0

ポイント50pt

該当箇所(line 362)で実行しているfread関数にひきわたされた

”読み取り長”に0以下の値が入っているんじゃないでしょうか。

これは多分、空であっても同じようなエラーになるかもしれませんね。


phpは書いたことがありませんが、調べると、

http://www.scollabo.com/banban/php/ref/ref_fread.html

第二引数に読み取り長を渡すようですから、そこの恐らくは

変数に入っている値がおかしいのだと考えられます。


原因はわかりませんが、

そのなんとかさんのphpブログシステムでは既知のバグかもしれま

せんが、私は知りませんので、どなたかの回答が無い限りは、

自力でデバッグするのがはやいかもしれません。


ここのコード(line362)をチェック。

先述しましたが変数であれば、362行以前で一度、デバッグとして

値を画面に表示してみるとかしてながめてみて、


やはり入っている値がおかしい(例えば空だとか、-1とか)

のであれば、そのおかしい値がどこで設定されたのかを

遡って調査する...と私ならば普通にそうやっていきます。


ポイント不要です。

id:aikoku

ありがとうございます。

コードを見て自分で修正したいのはやまやまですが、いかんせん何処を直せばいいかがわからず困っています。ちなみに362行は以下のようになっています。

$data = htmlspecialchars(JcodeConvert(fread($fp,filesize($_POST[tmpname])),0,2));

2005/04/02 19:00:32
id:americanboss No.2

回答回数52ベストアンサー獲得回数0

ポイント50pt

URLは、PHPマニュアルのエラーが出ている関数のページ。

エラーが出る理由は先の回答者さんの通りで間違いないと思います。


index.rdfをどのようなやり方で編集しようとしているのかはわかりませんが、恐らくPHPのプログラムを動作させてプログラムから編集しようとしているのでしょう。

編集を行うプログラムを呼び出すHTMLソースのフォームで「tmpname」という部分に該当する部分に恐らくfread関数で開くファイル名が書かれていると思います、そのファイル名が空だからエラーが出るとしか、実際にソースコードを見ていない人間には想像がつきませんね…。

id:aikoku

ありがとうございます。

参考URLを読ませていただきましましたが、現在の私が手をつけられる範囲を超えている事は判りました。

一旦クローズさせていただきます。

2005/04/03 01:37:41
  • id:aikoku
    解決しました

    >編集を行うプログラムを呼び出すHTMLソースのフォームで「tmpname」
    >という部分に該当する部分に恐らくfread関数で開くファイル名が書か
    >れていると思います、そのファイル名が空だからエラーが出るとし
    >か、実際にソースコードを見ていない人間には想像がつきませんね…。

    その通りでした。「ファイル名が空」でした。
  • id:aikoku
    Re:解決しました

    補足です。
    ちなみに始めに設定すべきところ(ファイル名)を設定してない私のミスです。
    作者のミスではないです。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません