[PHP-users 3900] Re: mysql を使ったデータベースで配列による選択(セレクト)
Youichi Iwakiri
php-users@php.gr.jp
Tue, 27 Nov 2001 10:21:26 +0900
いわきりです
ALPHA wrote in <20011127044644.052F.ALPHA@alpha.ne.jp>:
>$nhits回数だけ繰り返しですよね?
僕はそう解釈してますけどご本人はどうかはわかりません ;-p
>member_idカラムやpasswdカラムに入ってるいる値を変数に挿入ですよね?
>
> while($nhits = mysql_fetch_array($result)) {
>こんな感じでよいのではないでしょうか?
私はPostgreSQLしか使ってないのですが、羨ましい記述が
出来ますね。
pgsql拡張モジュールでは
$row = 0;
while ($nhits = pg_fetch_array($result, $row)) {
...
++$row;
}
と行を指定する必要があります。
#どっちかと言えばpg_fetch_objectを多用してます。
> $member_id = $nhits[member_id];
$member_id = $nhits->member_id;
>人のプログラムの動作を勘違いしてないかこわごわです。
僕も勘違いしてるかも
でも、この辺りのコーディング例は*おまけ*であって
元の質問者の問題点は、
Hiroshi Ozeki wrote in <008001c176a9$f07aba10$0400000a@ecotec.co.jp>:
> Warning: Unable to jump to row 2 on MySQL result index 4 in
>/usr/local/www/data/test/list_confirm.php on line 27
とあるように、SELECTの結果が1件しかないのに2件目を取り出そうとしている
とかそういった類のものと推測しました。
SELECT * FROM table WHERE id = 'aaaa'
のみ問い合わせてレコードセットは1件しか帰ってきていないのに
id ='(bbbb|cccc|dddd)'も取り出そうとしてるように感じました。
$i使ってるからそう思ったんですけどね。