• 締切済み

簡易ショッピングカートの精算

今、簡単なショッピングカートを作成しているのですが、品物の個数を プルダウンメニューで選択して、確認ボタンを押した時に品物の個数と その金額を精算するというスクリプトで悩んでいます。データベースなどは使わずにPHPだけで今進めています。 <form method="post" action="shoppingkakunin.php" > <tr><td><strong>商品名</strong></td><td><strong>値段</strong></td><td><strong>個数</strong></td></tr> <tr><td>りんご</td><td>100円</td><td><select name="reson"><option value = "100">1</option> <option value = "200">2</option><option value = "300">3</option> <option value = "400">4</option><option value = "500">5</option> <option value = "600">6</option><option value = "700">7</option> <option value = "800">8</option><option value = "900">9</option> <option value = "1000">10</option></select></td></tr> <input type ="submit" name="kakunin" value="確認"> というよな感じで次のページで精算をしたいのです。

  • msnxl
  • お礼率81% (36/44)
  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

たとえばこんな感じでどうでしょう? //入力ページ <form method="post" action="hoge.php" > <table border> <tr><th>商品名</th><th>値段</th><th> 個数</th></tr> <tr> <td>りんご</td> <td>100円 <input type="hidden" value="100" name="item[apple][price]"></td> <td><select name="item[apple][count]"> <option value = "1">1</option> <option value = "2">2</option> <option value = "3">3</option> <option value = "4">4</option> <option value = "5">5</option> <option value = "6">6</option> <option value = "7">7</option> <option value = "8">8</option> <option value = "9">9</option> <option value = "10">10</option> </select></td></tr> <tr> <td>みかん</td> <td>50円 <input type="hidden" value="50" name="item[orange][price]"></td> <td><select name="item[orange][count]"> <option value = "1">1</option> <option value = "2">2</option> <option value = "3">3</option> <option value = "4">4</option> <option value = "5">5</option> <option value = "6">6</option> <option value = "7">7</option> <option value = "8">8</option> <option value = "9">9</option> <option value = "10">10</option> </select></td></tr> </table> <input type ="submit" value="確認"> </form> //出力ページ <?PHP $sum=0; foreach ($_POST['item'] as $val){ $sum+=$val['price']*$val['count']; } print $sum."<br>"; ?>

関連するQ&A

  • ショッピングカートの精算

    今、簡単なショッピングカートを作成しているのですが、品物の個数を プルダウンメニューで選択して、確認ボタンを押した時に品物の個数と その金額を精算するというスクリプトで悩んでいます。データベースなどは使わずにPHPだけで今進めています。 なにか例などを上げていただけますでしょうか? スクリプトは下記のような感じで作っています。 <form method = "post" action = "syoppingkakunin.php"> <select name = "ringo"> <option value = "1">1</option> <option value = "2">2</option> <option value = "3">3</option> <option value = "4">4</option> <option value = "5">5</option> </select> <input type = "submit" name = "submit" value = "確認"> <input type = "hidden" name = "Fruit" value = "ringo"> <input type = "hidden"name = "ringo" value = "100"> </form>

    • ベストアンサー
    • PHP
  • ショッピングカートの作成

    今ショッピングカートを作成しようとしていて商品サンプルがいくつかあり「カートへ」ボタンを押すと精算ページへ飛び精算を行うというプログラムをつくっているのですがいくつかのサンプルでどれを選んでも一番上のサンプルの精算しか行えません。どうすれば解決できますでしょうか?よろしくお願いします。 ショッピングカートのプログラムの一部です。 while($row = mysql_fetch_row($result)){; $code = $row['0']; print "<form method='post' action='cart_syohin2.php'><tr>"; print "<td rowspan='2'>"; if (file_exists("cart_image/$code.jpg")) print "<img src='cart_image/$code.jpg' border='0'>"; print "</td>"; print "<td rowspan='3'>{$row['3']}</td>"; print "<td nowrap>{$row['2']}円</td></tr>"; print "<tr><td nowrap><input type='text' name='num' size='3'>個</td></tr>"; print "<tr><td>{$row['1']}</td>"; print "<td><input type='hidden' name='code' value='$code'><input type='submit' name='cart' value='カートへ'>"; print "</td>"; print "</tr></form>\n"; }

    • 締切済み
    • PHP
  • ショッピングカート カスタマイズ

    すいません、966で投稿しているのですが 更に詳しく理解して頂く為に再投稿させて頂きます。 現在、初心者ながら出来上がっている 「ショッピングカート」をカスタマイズしているの ですが困っています。下にあるプルダウン項目の 「詳細」A5 10冊 19000円 選択してカートに 入れた際に「詳細」A5 10冊「価格」19000円と 分けて表示させたいのですが、どうしたら良いか わからず困っておりますどなたかご存じの方、 助けて頂けませんか? 詳細は「syouhinnumber」価格は「kakaku」と 決まっている。現在は詳細、「A5 10冊 19000円」と 表示される。これを「詳細」A5 10冊「価格」19000円 とカートの中で分けて表示されるようにしたい。 現在は <form Action="http://www.*****.jp/cgi-bin/acart/setcook.cgi" METHOD=POST> <INPUT TYPE="hidden"NAME="shouhinmei" VALUE="ヨコ 見積書"> <INPUT TYPE="hidden"NAME="kazu" VALUE="1"> <INPUT TYPE="hidden" NAME="kakaku" VALUE="19000"> <TABLE BORDER=0> <TR><TD ALIGN=right>詳細</TD> <TD><SELECT name="shouhinnumber"> <OPTION>A5 10冊 19000円 <OPTION>A5 20冊 22000円 <OPTION>A5 30冊 25000円 <OPTION>A5 50冊 28000円 <OPTION>A5100冊 31000円 </SELECT> </TD></TR> <TR><TD></TD> <TD valign="middle"> <INPUT NAME="SUBMIT" TYPE="SUBMIT" VALUE="注文する"> </TD></TR> </TABLE> となっています。訂正・追加する箇所を教えて 頂けませんか?お願い致します。

    • 締切済み
    • CGI
  • phpでショッピングカート機能を作りたい。

    PHPで店舗のショッピングカートを作ろうとしています。 data 1 リンゴ 100円     2 ミカン  80円     3 バナナ 50円 PHPコード <form action="" method="post"> <?php $sql = "SELECT * FROM list"; $sth = $dbh->prepare($sql); $sth->execute(); while ($row = $sth->fetch()) { $id = $row["id"]; $name = $row["name"]; $price = $row["price"]; $image = $row["image"]; echo <<<EOT <table cellspacing="0" cellpadding="0" width="605" height="150"> <tr> <td rowspan="5" valign="top"><img src="../kanri/image/goods/$image" border="0" /></td> <form action="" method="post"> <input type="hidden" name="$id" value="$id" /> <input type="hidden" name="$name" value="$name" /> <input type="hidden" name="$price" value="$price" /> <td align="left" bgcolor="#eee8aa" width="400"><b> $id. $name</b></td> </tr> <tr> <td colspan="2" bgcolor="#ccccff"><p><font color="#000088"><b>税込 :$price </b></p></td> </tr> <td colspan="2" bgcolor="#e6e6e6"><p> 個数 : <select name="number"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> </select> <input type="submit" name="submit_cart" value="カートに入れる" /></p> </td> </tr> </table> </form> <br /> EOT; } ?> <hr></hr> <div align="center">カートの中身</div> <?php if (isset($_POST["submit_cart"])) { if(!isset($name)){ $name = $_POST['name']; } if(!isset($price)){ $price = $_POST['price']; } if(!isset($number)){ $number = $_POST['number']; } $total = $price * $number; echo "<div align='center'><p>$id 番の情報を取得しました。</p></div>"; echo "<div align='center'><p>商品名: $name </p></div><div align='center'><p>単価:$price 円 / 個数:$number 個</p></div>"; echo "<hr></hr>"; echo "<div align='center'><p>合計金額:<b>$total 円</b>です。</p></div>"; } ?> としているのですが、カートに入れるボタンを押しても最後のバナナしかカートに表示出来ません。 全ての商品の注文をカートに入れるにはどうすれば良いでしょうか? ご教授のほど宜しくお願いします。

    • ベストアンサー
    • PHP
  • 複数のselect値で1つも選択されていないとき、エラーを出したいのですが

    初めて投稿いたします。 宜しくお願いいたします。 postmailで注文フォームを制作中なのですが、複数の商品の個数(デフォルトでは0に設定)をselectで選択させようとしています。 例: <tr><td class="center">NO.01</td><td>あんまん</td> <td><select name="あんまん"><option selected value="">0</option> <option value="1">1</option> (~略~) <option value="9">9</option></select></td></tr> <tr> <td class="center">NO.02</td><td>にくまん</td> <td><select name="にくまん"><option selected value="">0</option> <option value="1">1</option> (~略~) <option value="9">9</option></select></td></tr> もし、すべての商品の個数が「0」に設定されている場合はエラーを出して、cgiでの送信を中止させたいのですが、どのようなjavascriptをソースに書けば良いでしょうか?  宜しくお願いいたします。

  • プルダウンで選択したCGIを動かしたい(ACTION=""をプルダウンで変更するには?)

    プルダウンで選択したCGIを動かしたい(ACTION=""をプルダウンで変更するには?) 以下の <option value="test1.cgi">テスト1  <option value="test2.cgi">テスト2 <option value="test3.cgi">テスト3 <option value="test4.cgi">テスト4 4つのプルダウンメニューを選択して、それぞれ別のCGIを動かすには どうしたらできますか? よかったら教えて下さい。javascriptで出来そうな気がするのですが… <FORM name="testname" method="post" ACTION="/cgi-bin/??????" > <TABLE> <TR><TD> テスト</TD> <TD bgcolor="#FFFFFF"> <SELECT name=""> <option value=""> <option value="test1.cgi">テスト1  <option value="test2.cgi">テスト2 <option value="test3.cgi">テスト3 <option value="test4.cgi">テスト4 </SELECT></TD> </TR> <TR> <TD bgcolor="#cccccc" width="150"> 開始日</TD> <TD bgcolor="#FFFFFF"> <input name="daysS" type="text" size="8"> </TD> </TR> <TR> <TD bgcolor="#cccccc" width="150"> 終了日</TD> <TD bgcolor="#FFFFFF"> <input name="daysE" type="text" size="8"> </TD> </TR> </TABLE> <BR> <INPUT type="submit"name="send"value="開始"> <INPUT type="reset" name="reset" valiu="消去"> </FORM>

  • 【タグ】左寄せする方法

    一部消去していますが、以下のようなフォームを左に任意のスペースを空けて表示させる場合、どういったタグを使えばいいのでしょうか。 よろしくお願いいたします。 <FORM ACTION="" METHOD="GET" NAME="TG" TARGET="_blank"><table width="250" border="0"><tr><td bgcolor="#0000FF"><div align="center"><font color="#FFFFFF"><strong>検索</strong></font></div></td></tr><tr><td>選びください。<br></br><select name="stayym" size="1"><option value="200902"></option></select></br><br>選びください。</br><select name="catid" size="1">n><option value="11203</option></option></select><input type="submit" value="GO"></td></tr><tr><td><div align="right">ツーリスト</div></td></tr></table></FORM>

    • ベストアンサー
    • HTML
  • 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
  • php メールフォーム プルダウンメニュー

    プルダウンメニューを使用して、フォーム→確認→送信と順々に値を受け取りたいのですが、form.phpではプルダウンメニューは表示されますが、form.phpで選択したプルダウンメニューがconfirm.phpでは表示されません。 confirm.phpでも表示されてなおかつ送信をしたら受け取れるようにしたいのです。 初心者なので、いろいろと勉強をしながら、本を読んだり、調べたのですが、まったくわからずです。どなたかご教授お願いします。 form.php <form method="post" action="confirm.php"> <table cellpadding="0" cellspacing="0" border="0"><tr><td>項目</td><td>入力欄</td><td>記入例</td></tr> <tr><td><label for="name">名前</label></td><td><input type="text" size="50" name="name" id="name" value="<?php print h(@$_SESSION['name']); ?>" /></td><td>例:goo 太郎</td></tr> <tr><td><label for="mail">生年月日</label></td><td> <select name="year[]"><option value="1970">1970</option><option value="1971">1971</option><option value="1972">1972</option><option value="1973">1973</option><option value="1974">1974</option></select>年 <select name="month[]"><option value="01">01</option><option value="02">02</option><option value="03">03</option><option value="04">04</option><option value="05">05</option><option value="06">06</option></select>月 <select name="day[]"><option value="01">01</option><option value="02">02</option><option value="03">03</option><option value="04">04</option><option value="05">05</option><option value="06">06</option></select>日 </td><td>例:1990年01月01日</td></tr> <tr><td colspan="3" style="text-align:center;"><input type="hidden" name="aaa" value="<?php print h($aaa); ?>" /><input type="submit" value="確認" /></td></tr> </table></form> confirm.php session_start(); $_POST = checkInput($_POST); if (isset($_POST['aaa']) && isset($_SESSION['aaa'])) { $aaa = $_POST['aaa']; if (!in_array($aaa, $_SESSION['aaa'])) { die('不正アクセスの疑いがあります。'); } } else { die('不正アクセスの疑いがあります。'); } $name = isset($_POST['name']) ? $_POST['name'] : NULL; $kana = isset($_POST['kana']) ? $_POST['kana'] : NULL; $mail = isset($_POST['mail']) ? $_POST['mail'] : NULL; $comment = isset($_POST['comment']) ? $_POST['comment'] : NULL; $error = array(); ★★★各項目のチェック★★★ $_SESSION['name'] = $name; $_SESSION['kana'] = $kana; $_SESSION['mail'] = $mail; $_SESSION['comment'] = $comment; $_SESSION['error'] = $error; <table class="form" cellpadding="0" cellspacing="0" border="0"> <tr><td>項目</td><td>入力欄</td><td class="title_color" style="border-left:1px solid #ffffff;">記入例</td></tr> <tr><td>名前</td><td class="title_back2"><?php print h($name);?></td><td>例:goo 太郎</td></tr> <tr><td>生年月日</td><td>★★★★★ここにform.phpからのプルダウンメニューを受け取りたい★★★★★</td><td>例:1990年01月01日</td></tr> </table> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td><form action="form.php" method="post"><input type="submit" value="戻る" /></form></td> <td><form action="send.php" method="post"><input type="hidden" name="aaa" value="<?php print h($aaa);?>" /><input type="submit" value="送信" /></form></td> </tr></table>

    • ベストアンサー
    • PHP
  • 複数のselectで値で1つも選択されていないとき

    POST-MAIL(http://www.kent-web.com/data/postmail.html)で注文フォームを作成中で、 複数の商品の個数(デフォルトでは0に設定)をselectで選択させようとしています。 例: <tr><td class="center">NO.01</td><td>あんまん</td> <td><select name="あんまん"><option selected value="">0</option> <option value="1">1</option> (~略~) <option value="9">9</option></select></td></tr> <tr> <td class="center">NO.02</td><td>にくまん</td> <td><select name="にくまん"><option selected value="">0</option> <option value="1">1</option> (~略~) <option value="9">9</option></select></td></tr> POSTMAILの機能では、formのinput valueに入力必須項目を記入できますが、 これに加え、すべての商品のselect値が「0」に設定されている場合も cgiのエラー画面でエラーメッセージを出したいのですが、可能でしょうか? お知恵を貸していただけるようお願いいたします。

    • ベストアンサー
    • CGI

専門家に質問してみよう