2011-01-18 19 views
0

テーブル内のデータ行をループするwhile()関数があります。
今、私はすべての行の1つの特定の列内にドロップダウンを持つ必要があります。
このドロップダウンもループを利用して実行されます。表を印刷するにはprintf()で関数()を呼び出す

function createDropdown($total) 
{ 
    $i = 1; 
    echo "<select>"; 
    while($i <= $total) 
    { 
     echo "<option value = '$i' id =* '$i'>$i</option>"; 
     $i++; 
    } 
    echo "</select>"; 
} 

:だからここ

は、ドロップダウンを作成する関数である

while($row1 = mysql_fetch_array($result1)) 
{ 
    print("<tr>"); 
    printf("<td>%s %s</td>", $row1["fname"], $row1["lname"]`); 
    printf("<td>".createDropdown($count)."</td>"); 
    printf("<td colspan = '2'>%s</td>",$count); 
    printf("<td><span id = 'attendance'>111</span></td>"); 
    print("</tr>"); 
} 

は、だから今、私は私が望むものを私に与えているの多くのドロップダウンを持っています。
問題は、次のページにすべてを掲載する必要があることです。これは、各ドロップダウンのIDを何らかの形で配列に入れなければならないことを意味します。

とにかく私はこれを行うことができますか?前もって感謝します。

<select>はIDを持つことができますが、すべてのドロップダウンが同じIDを持つという問題があります。 $_POSTを使用している場合は、最後のドロップダウンからのみ値を取得しますが、すべてではありません。私はしばらくの間問題があったドロップダウン自体を配列しなければなりません。この(申し訳ありませんが、私はあなたが求めているものにも少しは不明です)についてはどのよう

+0

FYI:scripti PHPのような言語では、書式設定機能を使用する必要がない限り、printfは必要ありません。 'printf( '%0.2d'、3.234234) - > '3.23')。 PHPは、printfオーバーヘッドなしで、通常の二重引用符で囲まれた文字列を使用してテキストに変数を挿入する完全な機能を備えています。 –

+0

ええ、私はそれを実現しました。私のグループにはprintfが好きな人がいます。私はそれらを簡単なエコーに変更する予定です。 –

答えて

1

function createDropdown($num, $total) 
{ 
    $i = 1; 
    $result = "<select id='sel$num' name='sel$num'>"; 
    while($i <= $total) 
     { 
     $result .= "<option value = '$i' id = '$i'>$i</option>"; 
     $i++; 
     } 
    $result .= "</select>"; 
    return $result; 
} 


$num = 0; 
while($row1 = mysql_fetch_array($result1)) 
{ 
    print("<tr>"); 
    printf("<td>%s %s</td>", $row1["fname"], $row1["lname"]); 
    printf("<td>".createDropdown($num++, $count)."</td>"); 
    printf("<td colspan = '2'>%s</td>",$count); 
    printf("`111"); 
    print(""); 
} 

私はあなたの機能であなたのエコーを変更し、それが代わりに文字列を返し作りました(I選択ボックスに名前(sel0、sel1、sel2など)が与えられます

0

createDropDown()関数のパラメータとして$ idを渡す必要があります:

function createDropdown($total, $id = 'somedefaultvalue') { 
    echo "<select id=\"$id\">"; 
    for (...) { 
     ... 
    } 
    echo "</select>" 
} 
関連する問題