• ベストアンサー

php8の配列上限

こんにちは 【環境】 Almalinux 9.3 PHP 8.2.15 apache 2.4.57 ウェブページでphpを使ってデータ入力画面を作っています。 250件程度のデータですが、データを登録して次のページに行くと125件分しかデータが送られていません。 特に変わったことはせず、php.iniもほぼデフォルトのままです。 上限を探ってみたのですが、実質メモリー量に依存で数値としては無いという情報を得ました。 結構シンプルに作っているので、原因がわかりません。 すみませんが、対応方法をご存じの方は教えてください。 ----簡易サンプル-------- <?php echo "<form method='POST' action='tourokku.htm'>\n"; echo " <input type="button" value="保存" onclick="location.href='touroku.htm'"><br />\n"; echo " <table border=1>\n"; echo " <tr><td>名前</td><td>電話番号</td><td>設問1</td><td>設問1</td><td>設問2</td><td>設問3</td><td>設問4</td><td>設問5</td><td>設問6</td><td>設問7</td></tr>\n"; for ($a=0;$a<250;$a++) { echo " <tr>\n"; echo " <td><input type='text' name='namae'></td>\n"; echo " <td><input type='text' name='tel'></td>\n"; for ($b=0;$b<7;$b++) { echo " <td><input type='number' min=0 name='s" . $b . "[" . $a . "]'></td>\n"; } echo " </tr>\n"; } echo "</form>\n"; ?> ----------- 抜粋版なのでこのまま実行するとおかしいかもしれませんが、雰囲気が伝わればと。。 上の値を入れて次のページに移動してphpinfoで値を確認すると、 $_POST['s0'] array( [0] => 1 [1] => 2 : : [124]=125 ) と、124番以降の値は前ページより引き継いでくれません。 メモリーの上限かと思い、php.iniの memory_limit = 128M -> 1024M post_max_size = 8M -> 200M 等、関係ある値を上げてみましたが効果はありませんでした。 できれば300件ぐらいまでは上げたいと思います。 よろしくお願いいたします。

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

max_input_vars の制限に引っかかっているような気がします。 https://blog.soln-sns.net/workaround-for-max_input_vars-limit/

y_usijima
質問者

お礼

ありがとうございました。 どうしてもこの手のページを検索できずに困っていました。「配列」で調べていたせいでしょうね。「要素数」で検索したら見つかっていたかも。結果論ですが。 ともあれ、本当に助かりました。

Powered by GRATICA

関連するQ&A

  • PHPでMySQLにデーターを追加するところで壁に当たってしまいました

    PHPでMySQLにデーターを追加するところで壁に当たってしまいました。 PHP5.3&MYSQL5.1 1.フォームへ入力 2.確認画面 3.MySQLへデーター追加 1.form <html> <head><title></title></head> <body> <form method="post" action="conf.php"> <table> <tr><th>番号</th><td><input type="text" name="id" /></td></tr> <tr><th>タイトル</th><td><input type="text" name="title" /></td></tr> <tr><th>テキスト</th><td><textarea name="cont" cols="40" rows="5" /></textarea></tr> <tr><th>日付け</th><td><input type="text" name="update" size="10" /></td></tr> </table> <input type="submit" value="送信" /><input type="reset" value="リセット" /> </form> </body> </html> 2.確認画面 <html> <head><title></title></head> <body> <table> <tr><th>番号</th><td><?php echo htmlspecialchars($_POST["id"]) ?></td></tr> <tr><th>タイトル</th><td><?php echo htmlspecialchars($_POST["title"]) ?></td></tr> <tr><th>テキスト</th><td><?php echo htmlspecialchars($_POST["cont"]) ?></td></tr> <tr><th>日付け</th><td><?php echo htmlspecialchars($_POST["update"]) ?></td></tr> </table> <form method="post" action="upld.php"> <input type="hidden" name="did" value="<?php echo htmlspecialchars($_POST["id"]) ?>" /> <input type="hidden" name="title" value="<?php echo htmlspecialchars($_POST["title"]) ?>" /> <input type="hidden" name="cont" value="<?php echo htmlspecialchars($_POST["cont"]) ?>" /> <input type="hidden" name="update" value="<?php echo htmlspecialchars($_POST["update"]) ?>" /> <input type="submit" value="登録" /> </form> </body> </html> 3.MySQLへデーター追加 <?php $Con = mysql_connect("localhost","root",""); if ($Con == false) {dir ("MySQLの接続に失敗。");} if (!mysql_select_db("phpdata",$Con)) {dir ("データーベース接続に失敗。");} $sql = "insert into daimoku(id,title,cont,update) values('".$_POST["id"]."','".$_POST["title"]."','".$_POST["cont"]."','".$_POST["update"]."')";//SQL文の作成 $res = mysql_query($sql) or die(mysql_error());//クエリの実行 mysql_close($Con);//切断 ?> <html> <head> <title></title> </head> <body> <p>ご登録ありがとうございました。</p> <a href="01.php">戻る</a> </body> 以上のコードでデーターの追加が出来ません。 どなたか教えていただけないでしょうか?

    • ベストアンサー
    • PHP
  • PHPで問い合わせフォーム 受信すると文字化けする

    フォーム⇒ (1)確認  ⇒ (2)送信 と3つに分けて、phpファイルに書きました。 ためしに、送信してみると、成功はするものの、文字が化けてメールの内容が分かりません。 分からないので教えてください。 フォーム ↓ <form method="POST" action="kakunin.php"> <table border="0"> <tr> <td >お名前</td> <td><input type="text" name="name" size="20"></td> </tr> <tr> <td>メールアドレス</td> <td><input type="text" name="from" size="20"></td> </tr> <tr> <td>メールタイトル</td> <td><input type="text" name="title" size="20"></td> </tr> <tr> <td>メッセージ</td> <td><textarea rows="5" name="naiyou" cols="40"></textarea></td> </tr> <tr> <td colspan="2"><input type="submit" value=" お問い合わせ内容を確認 "></td> </tr> </table> </form> (1) kakunin.php ↓ 入力フォームから情報を受け取り確認 <?php // フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ // 「magic_quotes_gpc = On」のときはエスケープ解除 if (get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); } // 値をチェックします。 $ErrFlg = 0; if ($name == "") { echo "<p>お名前を入力してください。"; $ErrFlg = 1; } if ($from == "") { echo "<p>メールアドレスを入力してください。"; $ErrFlg = 1; } if ($title == "") { echo "<p>メールタイトルを入力してください。"; $ErrFlg = 1; } if ($naiyou == "" ) { echo "<p>メッセージを入力してください。"; $ErrFlg = 1; } if ($ErrFlg) { exit(); } ?> 内容を確認して送信ボタンをクリックしてください <form method="POST" action="mail.php"> <table border="0"> <tr> <td width="100">お名前</td> <td width="300"><?php echo $name?></td> </tr> <tr> <td width="100">メールアドレス</td> <td width="300"><?php echo $from?></td> </tr> <tr> <td width="100">メールタイトル</td> <td width="300"><?php echo $title?></td> </tr> <tr> <td width="100">メッセージ</td> <td width="300"><?php echo nl2br($naiyou) ?></td> </tr> <tr> <td colspan="2"><input type="submit" value="送信"></td> </tr> </table> <input type="hidden" name="name" value="<?php echo $name ?>"> <input type="hidden" name="from" value="<?php echo $from ?>"> <input type="hidden" name="title" value="<?php echo $title ?>"> <input type="hidden" name="naiyou" value="<?php echo $naiyou ?>"> </form> (2) mail.php ↓のコード 送信 <?php // メール送信先を指定します。 $to = "xxxxxxxxxx■ gmail.com"; // フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ // 「magic_quotes_gpc = On」のときはエスケープ解除 if (get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); } // メール本文を組み立てます。 $naiyou = "お名前:$name\n メールアドレス:$from\n タイトル:$title\n 内容:$naiyou\n"; if ($name != "" and $from != "" and $title != "" and $naiyou != "" ) { if (mb_send_mail($to, $title, $naiyou, "From:$from")) { echo "メールを送信しました"; } else { echo "メール送信失敗です"; } } ?>

    • ベストアンサー
    • PHP
  • phpのpostについて

    a.phpの値をb.phpにpostしたいのですがうまく値が渡せません post元にはname属性に変数を用いているのですがpost先でnameをどのように指定したらいいかわかりません <a.php> <form action="foo.php" method="POST"> <div id="button"> <input type="submit" name ="PostGo" value="postTime" style="margin-right:30px;" /> </div> <table> <?php for ($data = 1; $data < 5; $data++) { ?> <tr><td> <select name="test<?php echo $data?>"> <option value=1>1 <option value=2>2 <option value=3>3 <option value=4>4 </select> <?php } ?> </table></form> <b.php> <?php for($i=1;$i<5;$i++){ $test =($_POST['test']);←ここの部分のpostをどう指定したらいいかわかりません echo $test; } ?> ※$_POST['test' + $i] これでも取れませんでした

    • ベストアンサー
    • PHP
  • PHPで返信メールにチェックボックスの値を表示したいのですが。。。

    PHPで返信メールにチェックボックスの値を表示したいのですが。。。 PHP初心者です。 request.phpという資料請求用のWEBページを作成しており、お問い合わせ項目内に 以下の様なチェックボックスを設けました。 <tr> <th>ご希望される商品</th> <td> <input type="checkbox" name="kibo[]" value="a-set" /> Aセット<br /> <input type="checkbox" name="kibo[]" value="b-set" /> Bセット<br /> <input type="checkbox" name="kibo[]" value="c-set" /> Cセット<br /> <input type="checkbox" name="kibo[]" value="d-set" /> Dセット </td> </tr> 入力後の内容確認画面では、 <tr> <th>ご希望される商品:</th> <td class="subheader_txt_l"><?php echo implode(' / ', $_POST['kibo']);?></td> </tr> として、選択した項目が表示されるところまではできましたが、送信ボタン後、確認メールが 送られてくる仕組になっているのですが、メール本文内では【ご希望される商品】欄が空っぽで 返ってきます。。。 ちなみにメール本文作成の処理では、 $body .= '【氏名】        '.$_POST['name1']."\n". '【メールアドレス】   '.$_POST['mail']."\n". '【住所】        '.$_POST['zyuusyo']."\n". '【ご希望される項目】  '.$_POST['kibo']."\n". '【お問い合わせ内容】  '.$_POST['comment']."\n\n". 値取得にあたり特別な関数が必要なのでしょうか。 ご教授頂けますと幸いです。よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPからのメールがうまく作動しない。。。

    php初心者です。宜しくお願いします。 問い合わせフォームを作成したく、以下のHTMLとPHPファイルを作成しましたが、「mail.php」の時点で作動せず、メールもおくられません。色々調べて「.htaccess」での設定に関係あると書いていますが、よくわかりません・・・ずっとわからず悩んでます。教えていただけないでしょうか。宜しくお願い致します。 「mail.html」 <html> <head> <title>メール送信フォーム</title> </head> <h2>メール送信フォーム</h2> <form method="POST"action="kakunin.php"> <table border="0"> <tr> <td>お名前</td> <td><input type="text" name="name" size="20"></td> </tr> <tr> <td>メールアドレス</td> <td><input type="text" name="from" size="20"></td> </tr> <tr> <td>メールタイトル</td> <td><input type="text" name="title" size="20"></td> </tr> <tr> <td>メッセージ</td> <td><textarea rows="5" name="naiyou" cols="40"></textarea></td> </tr> <tr> <td colspan="2"><input type="submit" value="内容を確認"></td> </tr> </table> </form> </body> </html> 「kakunin.php」 <html> <head> <title>メール送信フォーム</title> </head> <body> <h2>メール送信内容確認画面</h2> <?php //フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ //「magic_quotes_gpc=on」のときはエスケープ解除 if(get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); } //値をチェックします。 $ErrFlg = 0; if($name == ""){ echo"<p>お名前を入力してください。"; $ErrFlg = 1; } if($from == ""){ echo"<p>メールアドレスを入力してください。"; $ErrFlg = 1; } if($title == ""){ echo"<p>メールタイトルを入力してください。"; $ErrFlg = 1; } if($naiyou == ""){ echo"<p>メッセージを入力してください。"; $ErrFlg = 1; } if($ErrFlg){ exit(); } ?> <h2>内容を確認して送信ボタンをクリックしてください。</h2> <form method="POST" action="mail.php"> <table border="0"> <tr> <td width="100">お名前</td> <td width="300"><?php echo $name?></td> </tr> <tr> <td width="100">メールアドレス</td> <td width="300"><?php echo $from?></td> </tr> <tr> <td width="100">メールタイトル</td> <td width="300"><?php echo $title?></td> </tr> <tr> <td width="100">メッセージ</td> <td width="300"><?php echo $naiyou?></td> </tr> <tr> <td colspan="2"><input type="submit" value="送信"></td> </tr> </table> <input type="hidden" name="name" value="<?php echo $name?>"> <input type="hidden" name="from" value="<?php echo $from?>"> <input type="hidden" name="title" value="<?php echo $title?>"> <input type="hidden" name="naiyou" value="<?php echo $naiyou?>"> </from> </body> </html> 「mail.php」 <HTML> <HEAD> <title>メール送信フォーム</title> </HEAD> <BODY> <?php //メール送信先を指定 $to == "web@beworks-web.com"; //フォームの値を取得 if($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ //「magic_quotes_gpc=on」のときはエスケープ解除 if(get_magic_quotes_gpc()){ $v = stripslashes($v); } $v = htmlspecialchars($v); $sk = $v; } } else { exit(); } //メール本文を組み立て $naiyou = "お名前:$name\n メールアドレス:$from\n タイトル:$title\n 内容:$naiyou\n"; if($name != "" and $from != "" and $title != "" and $naiyou != ""){ if(mb_send_mail($to,$title,$naiyou,"From:$from")) { echo "メールを送信しました"; } else { echo "メール失敗です"; } } ?> </BODY> </HTML>

    • 締切済み
    • PHP
  • PHPの構文

    名前と年齢をフォームページから入力して 名前・年齢、そして成人・未成年の表示をするPHPのサンプルがあります。 初学者で無駄な部分が多く複雑になってしまったのですが ここをもっとこうしたほうが良いなど もっとシンプルで分かりやすい構文にできるのでしょうか? よろしくお願いいたします。 in.php ----------------------------------------------- <html> <body> <form action="out.php" method="post"> <table><tr><td>名前入力: <input type="text" name="name"></td></tr> <tr><td>年齢入力: <input type="text" name="age"></td></tr> </table> <input type="submit" value="ボタン"> </form> </body> </html> ----------------------------------------------- out.php ----------------------------------------------- <html> <body> <?php $name = htmlspecialchars($_POST["name"], ENT_QUOTES); $agen = mb_convert_kana($_POST["age"], "a"); $age = htmlspecialchars($agen, ENT_QUOTES); If($name == ""){ if($age == ""){ echo "名前、年齢の入力がありません。"; }else{ echo "名前を入力してください。"; } }else{ if($age == ""){ echo "年齢を入力してください。"; }else{ echo "あなたの名前は{$name}、年齢は{$age}です。"; if($age<20){ echo "あなたは未成年です。"; }else{ echo "あなたは成人です。"; } } } echo "<p><a href='in.php'>フォームに戻る</a>"; ?> </body> </html> -----------------------------------------------

    • ベストアンサー
    • PHP
  • phpの入力値の渡し方

    ループでテキストボックス、セレクトボックスを作成しそれぞれのコントロールに入力した値を別phpファイルに渡すことを考えています。 ループではなく一個一個テキストボックスを作れば個々のname属性をpostすればいいと思うのですがループの場合、それぞれの入力値をどのように渡せばいいかわかりません。 <test.php> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <link rel="stylesheet" href="style.css" type="text/css" /> <meta name="viewport" content="width=device-width"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>勤怠データ入力</title> </head> <script type="text/javascript"> function myEnter(){ myRet = confirm("入力画面を閉じてよろしいですか?"); } </script> <body> <div id="name"> <table> <tr style="text-align:center; background-color:#DDEBF7;"> </tr> <form name = "Data" action="foo.php" method="POST"> <tr style="text-align:center;"> </tr> </table> </div> <div id="button"> <input type="submit" name ="touroku" value="登録更新" style="margin-right:30px;" /> <input type="submit" value="戻る" onclick="myEnter()" /> </div> <div id="calendar"> <table style="text-align:center;"> <tr style="text-align:center; background-color:#DDEBF7;"> <td style="width:20px;">日</td> <td>開始時間</td> <td>終了時間</td> <td>入力1</td> <td>入力2</td> <td>入力3</td> </tr> <tr><!--1日--> <?php $day = 1; while ($day < 32){ ?> <td><input type="text" readonly value="<?php echo $day ?>" style="width:20px;"</td> <td><select name="start_time" > <option value="0" > 0</option> <option value="1" > 1</option> </select> : <select name="start_minute"> <option value="00" >00</option> <option value="30" >30</option> </select> </td> <td><select name="end_time" > <option value="0" >0</option> <option value="1" >1</option> </select> :<select name="end_minute"> <option value="00" >00</option> <option value="30" >30</option> </select> </td> <td><input type="text" name = "nyuryoku1" value="" style=width:150px></td> <td><input type="text" name = "nyuryoku2" value="" style=width:150px></td> <td><input type="text" name = "nyuryoku3" value="" style=width:150px></td> </td> </tr> <?php $day++; } ?> </form> </body> </html> <foo.php> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <?php $s_hour = ($_POST['start_time']); $s_minutes = ($_POST['start_minute']); $e_hour = ($_POST['end_time']); $e_minutes = ($_POST['end_minute']); $data1 = ($_POST['nyuryoku1']); $data2 = ($_POST['nyuryoku2']); $data3 = ($_POST['nyuryoku3']); $s_time = ($s_hour.$s_minutes); $e_time = ($e_hour.$e_minutes); echo '開始時間'; echo $s_time; echo '終了時間'; echo $e_time; echo '入力1'; echo $data1; echo '入力2'; echo $data2; echo '入力3'; echo $data3; ?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>無題ドキュメント</title> </head> <body> テスト実行 </body> </html>

    • ベストアンサー
    • PHP
  • 動的パラメータ値を渡しURLへ移動したいのですが

    クロネコヤマトのカード決済ページへリンクを張っています。 動的パラメータ値を渡し//カードのURLへ移動したいのですが、下記のようにソース単体では正常に移動します。 <?php //カードのURL define(PHP_CARD, 'https://*********.jp/'); //このスクリプト名 define(PHP_SELF, 'index.php'); <tr><th colspan="2">総合計</th></tr> <tr><td colspan="2" align="right">'.$goukei2.' 円</td></tr> (確認表示部分) echo"<form action=\"".PHP_CARD."\" method=\"post\" target=\"_blank\" accept-charset=\"Shift_JIS\"> <input type=\"hidden\" name=\"settle_price\" value=\"$goukei2\" /> <input type=\"submit\" value=\"お支払手続きへ\" name=\"card\" /></form> "; $card=$_POST["card"]; //お支払手続きへボタンが押された場合 ?> 下記のスクリプトにソースを貼り付けると、お支払手続きへのボタンをクリックしても//このスクリプト名(index.php)へ移動してしまいます。どうかご指導よろしくお願いします。 <?php //このスクリプト名 define(PHP_SELF, 'index.php'); //■お会計 function last($name,$mail,$yno,$ad,$tel,$way,$ps,$dm,$ad2,$time,$title2,$goukei,$goukei2,$dai2,$so){ global $lines,$cmdend; $data = '<table class="m"><tr><th colspan="2">商品情報</th></tr> '.$title2.' <tr><td>送料</td><td>'.$so.' 円</td></tr> <tr><td>手数料</td><td>'.$dai2.' 円</td></tr> <tr><th colspan="2">総合計</th></tr> <tr><td colspan="2" align="right">'.$goukei2.' 円</td></tr> <tr><th colspan="2">お客様情報</th></tr> <tr><td>お名前</td><td>'.$name.'</td></tr> <tr><td>メールアドレス</td><td>'.$mail.'</td></tr> <tr><td>郵便番号</td><td>'.$yno.'</td></tr> <tr><td>お届け先ご住所</td><td>'.$ad.'</td></tr> <tr><td>電話番号</td><td>'.$tel.'</td></tr> <tr><td>お支払い方法</td><td>'.$way.'</td></tr> <tr><td>連絡事項(配達希望日時等)</td><td>'.$ps.'</td></tr> <tr><td>お知らせ</td><td>'.$dm.'</td></tr> <tr><td>ご請求先ご住所</td><td>'.$ad2.'</td></tr> <tr><td>受注日時</td><td>'.$time.'</td></tr>'; if(!$_COOKIE['order']){ echo"<br />空です<br />"; }elseif($cmdend){ echo"<b class=\"stitle\">ご注文有難う御座いました。<br />このページを印刷して保存してください。メールも送信しております。</b>\n"; echo"$data\n"; echo"</td></tr></table>\n"; //カードのURL define(PHP_CARD, 'https://*********.jp/'); echo"<form action=\"".PHP_CARD."\" method=\"post\" target=\"_blank\" accept-charset=\"Shift_JIS\"> <input type=\"hidden\" name=\"TRS_MAP\" value=\"V_W02\" /> <input type=\"hidden\" name=\"trader_code\" value=\"900756001\" /> <input type=\"hidden\" name=\"order_no\" value=\"$time\" /> <input type=\"hidden\" name=\"goods_name\" value=\"$title2\" /> <input type=\"hidden\" name=\"settle_price\" value=\"$goukei2\" /> <input type=\"hidden\" name=\"buyer_name_kanji\" value=\"$name\" /> <input type=\"hidden\" name=\"buyer_tel\" value=\"$tel\" /> <input type=\"hidden\" name=\"buyer_email\" value=\"$mail\" /> <CENTER><FONT COLOR=\"#FF00FF\" SIZE=\"-2\">クレジットカードでお支払いされるお客様は<BR> 下記ボタンを押して手続きを行ってください。</FONT><BR> <BR><input type=\"submit\" value=\"お支払手続きへ\" name=\"card\" /></form> "; $card=$_POST["card"]; //お支払手続きへボタンが押された場合 echo"<br /><a href=\"".PHP_SELF."?\">トップへ戻る</a>\n"; }else{ echo"<b class=\"stitle\">お会計確認(ご確認後注文確定ボタンを押してください)</b><br />\n"; echo"$data\n"; echo"<tr><th colspan=\"2\"> </th>\n"; echo"<tr><td colspan=\"2\" align=\"center\"><a href=\"".PHP_SELF."?mode=reji\">戻る</a> \n"; echo"<input type=\"hidden\" name=\"cmdend\" value=\"cmdend\" />\n"; echo"<input type=\"submit\" value=\"注文確定\" name=\"cmdend\" onclick=\"DisableButton(this);\" /></td>"; echo"</td></tr></table>"; } } ?>

    • ベストアンサー
    • PHP
  • phpでのselect値の取得・表記について

    php初心者です。 自動計算する見積ページを独学で作っているのですが、どうしてもわからなかったので、質問させてください。 htmlページでセレクトタグから選択してもらった結果(値)を、phpページに送信し、phpページでvalueとname両方を別々の場所に表記するには、どのようなコードを書けば良いでしょうか? valueの値をphpページで表記させたり計算させる事はなんとか独学でもできたんですが、nameを表記させる事がどうしてもできませんでした。 お詳しい方、何卒ご教授ください。 途中までなんとかできたタグを下記に記載します。 <例>input.html → output.php (1)input.html (細かいタグは端折ります) <html> <body> <form action="output.php" method="post"> <tr> <th>生菓子</th> <td> <select name="goods1" onChange="keisan()" style="padding:5px; border:1px solid #dcdcdc;" /> <option value="0" name="未選択">お選びください</option> <option value="500" name="フルーツケーキ">フルーツケーキ</option> <option value="3000" name="チーズケーキ">チーズケーキ</option> <option value="5000" name="チョコレートケーキ">チョコレートケーキ</option> <option value="※別途見積" name="おまかせ">おまかせ</option> </td> </tr> <tr> <tr>焼き菓子</th> <td> <select name="goods2" onChange="keisan()" style="padding:5px; border:1px solid #dcdcdc;" /> <option value="0" name="未選択">お選びください</option> <option value="500" name="クッキー">クッキー</option> <option value="3000" name="パウンドケーキ">パウンドケーキ</option> <option value="5000" name="パイ">パイ</option> <option value="※別途見積" name="おまかせ">おまかせ</option> </td> </tr> <tr> <th><input type="submit" value="submit" /></th> </tr> </form> </body> </html> ↓上記で選択してもらった値を下記のoutput.phpにsubmit。 (2)output.php (細かいタグは端折ります) <html> <body> <tr> <th>生菓子</th> <td>ここに選択されたnameの値を表記したい!</td> <td><?php echo htmlspecialchars($_POST["goods1"]); ?></td> </tr> <tr> <th>焼き菓子</th> <td>ここに選択されたnameの値を表記したい!</td> <td><?php echo htmlspecialchars($_POST["goods2"]); ?></td> </tr> <tr> <td colspan="2">Total </td> <td><?php echo htmlspecialchars( $_POST["goods1"] + $_POST["goods2"]); ?><td> </tr> </body> </html> 以上。 ぜひ、ぜひぜひご教授よろしくお願いいたします。

    • 締切済み
    • PHP
  • POSTを配列として送信し、キーと値を一覧で表示

    formに入力した値をPOSTを配列として送信し、 そのキーと値の一覧表を作ってみようとしたのですが、 思うように動いてくれません。何が間違っているのでしょうか。 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>POSTを配列で送信して取得する</title> </head> <body> <?php if($_SERVER[REQUEST_METHOD]=="POST"){ if(isset($_POST["submit_no"])){ echo "<table border=\"1\"><tr><td>番号</td><td>内用</td><tr>"; while($key_no = key($_POST[no])+1){ //+1は番号を1から表示させるため $values = htmlspecialchars($_POST[no],ENT_QUOTES); echo <<< EOS <tr> <td>$key_no</td> <td>$values</td> </tr> EOS; } echo "</table>"; } } ?> <form action="post_hairetu.php" method="POST" enctype="multipart/form-data"> 1<input type="text" name="no[]" value="" /><br /> 2<input type="text" name="no[]" value="" /><br /> 3<input type="text" name="no[]" value="" /><br /> <input type="submit" name="submit_no" value="送信" /> </form> </body> </html>

    • ベストアンサー
    • PHP

専門家に質問してみよう