• 締切済み

select ループ

セレクトBOXの中をループさせて表示したいのですが? 上手く表示されません。 エラーメッセージ ・webサイトがメンテナンス中 ・webサイトにプログラム上の問題が  あると出ます。 下記ソースでおかしいところあれば お教え願えませんでしょうか? <html> <head><title>session.html</title></head> <body> <?php print"<table border="1"><tr>"; print"<td>"; print"<select name=kosu>\n"; for ($i=0; $i<5; $i++){ print"<option value=$i>$i\n"; } print"</select>"; print"</td>"; print"<td><input type=submit value="登録"></td>"; print"</tr>"; print"</table>"; ?> </body> </html>

  • PHP
  • 回答数2
  • ありがとう数4

みんなの回答

  • 11spec0
  • ベストアンサー率83% (10/12)
回答No.2

<html> <head><title>session.html</title></head> <body> <?php echo '<table border="1"><tr>'; echo '<td>'; echo '<select name=kosu>\n'; for ($i=0; $i < 5; $i++){ echo "<option value=$i>$i\n"; } echo '</select>'; echo '</td>'; echo '<td><input type=submit value="登録"></td>'; echo '</tr>'; echo '</table>'; ?> </body> </html> こちらでいけるかと思います。

  • calltella
  • ベストアンサー率49% (317/635)
回答No.1

<html> <head><title>session.html</title></head> <body> <?php print"<table border=\"1\"><tr>"; print"<td>"; print"<select name=kosu>\n"; for ($i=0; $i<5; $i++){ print"<option value=$i>$i</option>\n"; } print"</select>"; print"</td>"; print"<td><input type=submit value=\"登録\"></td>"; print"</tr>"; print"</table>"; ?> </body> </html>

関連するQ&A

  • 配列データの受け取り

    下記配列を受け取ることが出来ません。 エラーになります。 受け取り側にARRAY[0],ARRAY[1]と 表示されます。 実際は送信側のinputboxに入力した値を 受け取り側で表示させたいのですが・・・ おかしい箇所ご指摘いただけないでしょうか? それとも、PHPでは出来ないことなのでしょうか? //送信側 <html> <head><title>session.html</title></head> <body> 請求書 <form action="teke.php" method="post"> <table border="1"> <tr align="center"> <td>月</td> <td>日</td> <td>明細</td> <td>単価</td> <td>数量</td> <td>金額</td> </tr> <?php for($q=0;$q<10;$q++){ print"<tr>"; print"<td>"; print"<select name=kosu>\n"; print"<option value=''></option>\n"; for ($i=1; $i<13; $i++){ print"<option value=$i>$i</option>\n"; } print"</select>"; print"</td>"; print"<td>"; print"<select name=kosu>\n"; print"<option value=''></option>\n"; for ($j=1; $j<32; $j++){ print"<option value=$j>$j</option>\n"; } print"</select>"; print"</td>"; for($o=0;$o<4;$o++){ print"<td><input type='text'name='".$data[$q][$o]."'></td>"; } print"</tr>"; } ?> </table> <input type="submit" value="登録"> </body> </html> //受け取り側 <html> <head><title>session.html</title></head> <body> 請求書 <table border="1"> <tr align="center"> <td>月</td> <td>日</td> <td>明細</td> <td>単価</td> <td>数量</td> <td>金額</td> </tr> <?php for($q=0;$q<10;$q++){ print"<tr>"; print"<td>"; print"<select name=kosu>\n"; print"<option value=''></option>\n"; for ($i=1; $i<13; $i++){ print"<option value=$i>$i</option>\n"; } print"</select>"; print"</td>"; print"<td>"; print"<select name=kosu>\n"; print"<option value=''></option>\n"; for ($j=1; $j<32; $j++){ print"<option value=$j>$j</option>\n"; } print"</select>"; print"</td>"; for($o=0;$o<4;$o++){ $data[$q][$o]=$_POST["$data[q][o]"]; $_SESSION["$data[q][o]"].=$_POST["data[$q][$o]"]; print"<td>$data[$q][$o]</td>"; } print"</tr>"; } ?> </table> <input type="submit" value="登録"> </body> </html>

    • 締切済み
    • PHP
  • ループ

    TEXTBOXのループを試みますが 上手く表示されません。 下記ソースのおかしいところ ご指摘いただけませんでしょうか? <html> <head><title>session.html</title></head> <body> <table border="1"> <tr bgcolor="#BBBBBB"> <th>月</th> <th>日</th> <th>明細</th> </tr> <?php for($i=0; $i<3; $i++){      print"<td><input type=text name=$data[$i]></td>\n"; } ?> </table> </body> </html>

    • 締切済み
    • PHP
  • for文が全然ループしていない

     下のようなfor文を作って回してみましたが、チェックのために一番最後に書いたPRINT文で「0」が表示され、その下に下線表示だけです。  一体どこが悪いのでしょうか。全く分かりません。  また「$i==9」を「$i=<9」と書いていましたら、エラー表示になりました、何が原因でしょうか。  エディター(TeraPad)の認識に原因があるのでしょうか。  文法のエラー表示は出ていません。  9*9の表を表示させるだけの簡単なコードなのですが。 <html><head><title>make_matrix_html</title></head> <body> <table border="1"> <?php for($i=1;$i==9;$i++){ print ("<tr><br />"); for($j=1;$j==9;$j++){ print ("<td>".($i*$j)."</td>"); } print ("</tr>"); } print ($i*$j); ?> </table></body></html>

    • ベストアンサー
    • PHP
  • select表示について

    先程selectにて計算表示をご相談させて頂きました。 その方法を回避した方が良かったので回避した方法で進めています 改めてご相談させて頂きます。 HTML側のセレクトで PHPにある「4つの計算の配列の答えを1つだけ選んで表示する」 方法を考えています HTML側の状況です <HTML> <HEAD> </HEAD> <BODY> <form action="http://localhost/test/**/**.php" method="post"> <select name="e" size=1> <option value = "{$stock["a"]}">1</option> <option value = "{$stock["b"]}">2</option> <option value = "{$stock["c"]}">3</option> <option value = "{$stock["d"]}">4</option> </select> <input type = "submit" value = "送信"> <input type = "reset" value = "クリア"> </BODY> </HTML> PHP側の状況です <?php //計算データー $num1 = 2; $num2 = 3; $num3 = 4; $num4 = $num1*$num2; $num5 = $num2+$num3; $num6 = $num3+$num2-$num1; //ストックデーター $stock["a"] = $num3; $stock["b"] = $num4; $stock["c"] = $num5; $stock["d"] = $num6; //上のストックデータをhtml側からセレクトで行うのが下の$eです $e = $_POST["e"]; ?> <table border="2"> <tr bgcolor="#AAAAAA"> <th>在庫状況</th> </tr> <?php print "<tr><td>結果は{$stock["a"]}です。</td></tr>\n"; print "<tr><td>結果は{$stock["b"]}です。</td></tr>\n"; print "<tr><td>結果は{$stock["c"]}です。</td></tr>\n"; print "<tr><td>結果は{$stock["d"]}です。</td></tr>\n"; //上記は計算表示OK 下記のセレクトの結果が文字のみ表示で選択表示はされず print "<tr><td>セレクトの結果 {$_POST["e"]}です。</td></tr><br/>\n"; ?> 計算表示は出て来るのですが、肝心なpost"e"のselectの指示と表示方法の根本が分かっていない為、selectだけが全く反映されてません。 ストックデーターの上下に何かの指示が絶対に必要だと思いますが これ以上は答えが出せない状況です 超初心者で分からない者で大変申し訳ございませんがどなたか再びご教示願います。

    • 締切済み
    • PHP
  • JavaScriptのSELECTの値について

    JavaScriptについて、質問させてください。 html1からhtml2にSELECTで選択した値を渡すプログラムを作成しています。 下はそのソースです。 <html> <head></head> <body> <form method="POST" action="html2" onSubmit="入力チェック"> <table> <tr> <td>項目A-1</td> <td>項目A-2</td> <td> <select name="selname1"> <option value="0">0</option> <option value="1,11,111">1</option> <option value="2,22,222">2</option> </select> </td> </tr> <tr> <td>項目B-1</td> <td>項目B-2</td> <td> <select name="selname2"> <option value="0">0</option> <option value="3,33,333">3</option> <option value="4,44,444">4</option> </select> </td> </tr> </table> </form> </body> </html> 項目は全部で10ほどあるので、途中省略しています。 SELECTで0以外が選ばれていた場合に、それに関連する項目情報と optionのvalueをhtml2に送信させて、一覧表のように表示させたいと思います。 JavaScriptのDOMやループ文を使うようですが、 私は専門外なので、どのような処理を組めばよいかわかりません。 どなたか、わかる方ご教示願います。

  • セレクト表示方法について

    DBのトップ画面で選択画面の表示項目を1つだけ表示表示して矢印で開けるようにしたいのですが書き換え方がわかりません。 一応、表示部分の↓に書いて見ました sub html { # 表示開始 &header; print <<"EOM"; <table bgcolor="#B5B5B5" cellpadding=4 cellspacing=0 border=0 width="45"> <tr><td align="center"> <A HREF="$homepage" STYLE="text-decoration:none;color:black">戻る</A> </td></tr> </table> <center> <hr width="400" noshade> <font color="$t_color" size="$t_size" face="$t_face"><b>$title</b></font> <hr width="400" noshade> <P> <table><tr><td> $TopMessage </td></tr></table> <form method="POST" action="$script"> <input type=hidden name=mode value="search"> <table border=0 cellpadding=15><tr> EOM # 配列1 $size1 = @part1 + 1; print "<td valign=top><font color=\"$t_color\">■</font> <B>テス</B><br>\n"; print"<select name=P1 size=\"$size1\">\n"; print "<option value=\"99\" selected>指定なし\n"; foreach (0 .. $#part1) { print"<option value=\"$_\">$part1[$_]\n"; } print "</select></td>\n"; print "</tr></table>\n"; print "<font color=\"$t_color\">■</font> <b>キーワード</b> (任意)<br>\n";

    • 締切済み
    • CGI
  • ループの中のjavascriptに関して

    ループの中のjavascriptに関して 初歩的な質問で申し訳ありません。 チェックボックスを複数(ここでは2つ)し、どちらかが選択された場合、もう片方の 方のチェックをはずすような javascript を作成しましたが、これをPHPのなかのループへ 組み込みたいと考えております。 ある程度抜粋したソースを以下に記載しましたが、どこをどのようにすれば実現できるで しょうか。。。 恐らくどの行が選択されているか?を判断する為の変数かなにかをパラメータとして渡して あげれば良いかとは思いますが。。。 《記述内容》 <SCRIPT Language="JavaScript"> <!-- function ctrl_check02(check02_checked) { alert(check02_checked); document.getElementsByName('check02')[0].checked = false; } function ctrl_check01(check01_checked) { document.getElementsByName('check01')[0].checked = false; } </script> <HTML> <HEAD> <meta http-equiv="Content-Language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=shift-jis"> <title>リスト</title> </HEAD> <BODY> <CENTER> <SPAN id="ID" STYLE="visibility: hidden; position: absolute;"></SPAN> <?php if($row <= 31){ print("<TABLE BORDER='0'>\n"); print("<TR>\n"); print("<TD Valign='TOP'><FONT COLOR='#FF0000'><B></B></FONT>\n"); print("<TABLE BORDER='2' WIDTH='600' CELLPADDING='2' CELLSPACING='1'>\n"); print("<TR ALIGN='center'>\n"); print("<TD NOWRAP WIDTH='50' BGCOLOR='#DDDDDD'><FONT SIZE='2'><B>有</B></FONT></TD>\n"); print("<TD NOWRAP WIDTH='50' BGCOLOR='#DDDDDD'><FONT SIZE='2'><B>無</B></FONT></TD>\n"); print("</TR>\n"); for($count=1;$count<$row+1;$count++) { print("<form>\n"); print("<tr>\n"); print("<TD WIDTH='50' align='center'><input type=checkbox name='check01' id='idcheck01' value='1' onClick='ctrl_check02(this.checked);' ></TD>\n"); print("<TD WIDTH='50' align='center'><input type=checkbox name='check02' id='idcheck02' value='1' onClick='ctrl_check01(this.checked);' ></TD>\n"); print("</tr>\n"); print("</form>\n"); } print("</TABLE>\n"); print("</TD>\n"); print("</TR>\n"); print("</TABLE> \n"); } ?> </CENTER> </BODY> </html> 教えて下さい。 よろしくお願いします。

  • カレンダ-の表示

    下記はカレンダ-を表示するプロガラムです、 画面の一番上から表示したいのですが何行か下に表示されます、 一番上から表示するのは、どうしたら良いですか、 よろしくお願いします。 #!/usr/local/bin/perl print "Content-type: text/html\n"; print "\n"; print "<HTML>\n"; print "<HEAD>\n"; print "<TITLE>カレンダ-</TITLE>\n"; print "</HEAD>\n"; ########################################## @youbi = ('日', '月', '火', '水', '木', '金', '土'); print "<BODY BGCOLOR=\"WHITE\">\n"; print "<CENTER>\n"; print "<TABLE BORDER=\"0\" cellpadding=\"1\" cellspacing=\"2\"><TBODY><TR VALIGN=\"top\" BGCOLOR=\"BLUE\"><TD>\n"; $tuki = 0; for ($k = 1; $k <= 12; $k++) { print "<TABLE BORDER=\"0\" BGCOLOR=\"BLUE\" cellpadding=\"2\" cellspacing=\"1\" width=25%><TBODY>\n"; print "<TR ALIGN=\"middle\"><TD colspan=\"7\"><FONT SIZE=\"2\" COLOR=\"WHITE\">$year年 $ntuki月</FONT></TD></TR>\n"; print "<TR>\n"; for ($i = 0; $i < 7; $i++) { print "<TH BGCOLOR=\"SKYBLUE\"><FONT SIZE=\"2\" COLOR=\"BLACK\">$youbi[$i]</FONT></TH>\n"; } if (($k == 4) || ($k == 8)){ print "</TBODY></TABLE></TD></TR><BR CLEAR=\"all\"><BR><TR VALIGN=\"top\" BGCOLOR=\"BLUE\"><TD>\n";} elsif ($k == 12) { print "</TBODY></TABLE></TD></TR></TBODY></TABLE><BR CLEAR=\"all\"><BR>\n";} else { print "</TBODY></TABLE></TD><TD>\n";} $kuuhaku = 0; $hiduke = 0; } print "</CENTER>\n"; print "</BODY>\n"; print "</HTML>\n";

    • ベストアンサー
    • CGI
  • perl内のhtml文を、ループさせたいのですが、これってできないんでしょうか?

    たびたび申し訳ありません。周りに聞く人もいなく、まったくの初心者ですので、なにとぞお願いいたします。 下記の「ここから~ここまで」の$iの値を変えながらループさせたいのですが、まったくうまくいきません。なにかいい方法あったら教えてください。 それとも、こんな書き方じゃダメなんでしょうか? #!/user/bin/perl open(IN,"data.csv"); #flock IN,2; @line = <IN>; #flock IN,8; close(IN); $cnt = 0; foreach(@line){ ($sina[$cnt],$jpg[$cnt],$pr[$cnt],$kakaku[$cnt]) = split(/\,/,$_); $cnt++; } print<<"EOF"; Content-type: text/html <HTML> <HEAD> <TITLE>やぁ!</TITLE> </HEAD> <BODY> EOF ###################ここから print<<"EOF"; <TABLE border="1"> <COL span="4" width="100"> <TBODY> <TR> <TD width="300">$sina[$i]</TD> <TD width="300">$jpg[$i]</TD> <TD width="300">$pr[$i]</TD> <TD width="300">$kakaku[$i]</TD> </TR> </TBODY> </TABLE> EOF ##################ここまで print<<"EOF"; </BODY> </HTML> EOF

    • ベストアンサー
    • CGI
  • テーブル内でドロップダウンメニューを使った際の行間

    テーブルの中に配置したフォーム(ドロップダウンメニュー)の下に 無用な空白ができてしまい,このままだとレイアウトが崩れて困っています. 文末のHTMLソースをそのままIE6で表示いただくとご理解いただけると思います. <select size="1">としても改善しないため, <body>,<table>,<tr>,<td>,<form>などへ,CSS で, height で小さい数値を入れたり,line-height で行間詰めを試みても改善せず. これはもう仕方ないでしょうか? よろしくお願い致します。 <html> <head><title></title></head> <body> <table border="1"> <tr> <td> <form> <select onchange="location=this.options[this.selectedIndex].value"> <option>選択</option> <option value="1ndex.htm">1 <option value="2frame.htm">2 </select> </form> </td> </tr> </table> </body> </html>

    • ベストアンサー
    • HTML

専門家に質問してみよう