[PHP-users 6892] 変数の扱い方について

shojun kimura php-users@php.gr.jp
Mon, 15 Apr 2002 05:21:19 +0900 (JST)


はじめまして、木村といいます。
早速ですが、質問です.

echo "あるメッセージ : ";
echo "許可"."<input type=\"checkbox\" 
name=\"kyoka1_$i\" value=\"1\">";

以上のように、複数の何かのメッセージを
許可するかどうかを判断するために、
チェックボックスでチェックがついたものは
まとめて、許可するというのを作っているんですが、
$iのところをFOR文で0から1ずつ増やして、まわして、
名前をつけると、
<input name = "kyoka1_0">
<input name = "kyoka1_1">
...
のようにチェックボックスに名前をつけることまではできたん
ですが、そのkyoka1_0,kyoka1_1が1かどうかを

$sql = "select * from taikimsg";
$r = pg_exec($db, $sql);

for($i = 0; $i < pg_numrows($r); $i++)
{
$rec = pg_fetch_array($r, $i);

if($kyoka1_.$i == 1)
   $sql = "update taikimsg set kyokamsg1 = 1 where userid
= '".$rec['userid']."'";
 pg_exec($db, $sql);
}

のようにすると、、$kyoka1_0 ,$kyoka1_1が順に評価されるん
じゃなくて、$kyoka1_.$i が0、$kyoka1_.$i が1だと解釈さ
れて、
if(1 == 1)のとき、つまり、$i が1のときだけ、update文が
実行されます。

私がやりたいのは、$kyoka1_0 == 1のとき、一番目のメッセ
ージを
許可、$kyoka1_1 == 1の時、2番目のメッセージを許可、、
これだけですが、うまくいきません。
どこが、まずいのか、教えてください。
よろしくお願いします。

__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!
http://bb.yahoo.co.jp/