練習用にECサイトを自作しています。ショッピングカートページの商品の個数をセレクトボックスで表示しています。
<select name="product-num" data-productid="<?php echo $val['id']; ?>" class="js-select-num"> <?php for($i = 0; $i < 30; $i++) : ?> <option value="<?php echo $i?>" <?php if ($i == $num) echo "selected"; ?> ><?php echo $i?></option> <?php endfor ; ?> </select>
こんな感じです。(変数は気にしないでください)
ショッピングカートページで個数を増やしたり減らしたりできる(同時に合計金額やカート内の個数も増減する)仕様にしたいです。
ショッピングカートのデータはセッションで保存してあります。
Ajaxを使えば可能だと思いましたが、よくわかりませんでした。
他にも、ググってみましたが、ピントくるものがなかったので質問させていただきました。
こーゆう感じでできるのでは?だったり、このサイト見れば参考になるだったり、ざっくりでいいので助言をお願いします。不備があればご指摘お願いします。
※追記
jQuery
1 var $select = $('.js-select-num'); 2 var selectProductId = $select.data('productid'); 3 $select.on('change', function() { 4 var value = $select.val(); 5 $.ajax({ 6 type: "POST", 7 url: "ajaxNum.php", 8 data: { 9 productId : selectProductId, 10 number : value, 11 }, 12 }).done(function( data ) { 13 console.log('Ajax success'); 14 15 }).fail(function ( msg ) { 16 console.log('Ajax failure'); 17 }); 18 19 });
ajaxNum.phpではショッピングカート内のデータである$_SESSIONを変更するようにしましたが、
$_SESSION変数の値を変えた後に、動的にhtmlを変える方法が分かリません。
以上の理由でajaxではなく、違う方法で探そうと思いました。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/06 02:40
2020/02/06 03:06