[PHP-users 7134] Re: まとめて処理
Tatsuro Nakagawa
php-users@php.gr.jp
Wed, 24 Apr 2002 23:03:43 +0900
中川@magicです。
-->> Reply shojun kimura <k_shojun@yahoo.co.jp> <<--
> すいません、そんな意図でメールを書いたわけじゃないです。
いや、それはわかっています。
ただ、アプリケーションレベルのバグはMLで流れてるのはどうかということです。
今回の件にしてもそうなんですが、もう少し頭から全部見直すことが重要だと思いま
す。
「こういうアプリケーションエラーが出てます。なにが悪いのかわかりません。」は
「デバグしてください」の部類に入ってしまうのです。
見たところ、木村様はどうやらデバグに慣れていらっしゃらないようですね。
ならば、「アプリケーションエラーが連発するんですが、プログラミング初心者なん
でデバグの際に注意するべきことはなんでしょう?」とかにしてみたらまだMLにも役
に立つ情報になると思います。
実際、デバグではまると辛いのはよくわかりますし。
ちなみに、今回の答えですが、一番上のforループでpg_numrows($r)を条件として使っ
ていますよね?
その$rというのは直前のSQLのResultなのですが、ループの中でそのResult($r)をほ
かのSQLのResultで置き換えてしまっています。
だから、ループがぐちゃぐちゃになります。
定番のやり方としては、ループの条件の中でpg_numrows($r)みたいに、毎回関数を走
らせるのではなく、その直前で$cnt_oya_loop=pg_numrows($r)と言う風に変数に入れ
て、それを条件にします。
このあとどう直すのかは自分の力でがんばってください。
--
Tatsuro Nakagawa