ホームページ作成の小技-BreathTake-

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--------(--) --:-- スポンサー広告 編集 |

ショッピング・カートシステム

■有料のショッピング・カートシステムのサイトがダウンしてしまったので、NucleusCMSを使ったショッピング・カートシステムを自作中です。

問題は、
①「カートに入れる」ボタンを押して商品をカートに入れる。
②カートに入れた「商品の一覧を見る」ボタンを押して、蓄積された商品データの一覧を表示する
と言う動作を、どのようにすれば実現出来るのか? です。

■ログイン時に会員登録して貰い、会員データをMySQLに入れておいて、そこに選択した商品データを加算して行く方式だと作り方が判るのですが、MySQLを使わない方法だと、見当がつきません。

【セッションの利用】…不可
セッションを使って、送られて来たデータを一時保存して、「カートの中身を見る」画面に来たら、その値を読み込み表示する。
PHPファイルで、
  session_start();
    $_SESSION["goods_id"] = $goods_id;
…と言うプログラムを書き、
  <%phpinclude(./shoppingcart/xxxxxx.php)%>
で読み込ませて表示させようとすると、
「すでにその関数は宣言されている」みたいなエラー表示が出てしまいます。

【クッキーの利用】…不可
これも、「すでにその関数は宣言されている」みたいなエラー表示が出てしまいます。

■nucleus内部の仕様で、関数が利用出来ないのであれば、インラインフレームで独立したプログラムを書けば良いことは思いつきました。
しかし、nucleusから送られる、商品ID・数量の値をPOST・GETで受け取ることが出来ません。

nucleusからは

$goods-id="商品ID";
$goods-count="購入数量";
 <form action="index.php" method="POST">
 <input type="hidden" name="goods-id" value="<?= goods-id ?>">
 <input type="hidden" name="goods-count" value="<?= goods-count ?>">
 <input type="submit" value="送信">
</form>

で、データ送信をします。

んで、
①データ受信先のindex.phpファイルを作成する
②そのファイルで、nucleusから送られたデータを$POSTで受信する

//商品ID
 $goods_id = _$_POST['goods_id'];
//購入数量
 $goods_count =$_POST['goods_count'];

③index.phpファイルにインラインフレームを作成する

<iframe src="./frame.php?goods-id=<?=$goods_id ?>&goods-count=<
?= $goods_count?>" name="contents" width="800px"
height="660px" frameborder="0" marginwidth="0"
marginheight="0"
scrolling="auto">
  インラインフレーム対応のブラウザでご覧ください
</iframe>

④飛び先のframe.phpで、送信データを受信する

//商品ID
 $goods_id = _$_GET['goods_id'];
//購入数量
 $goods_count =$_GET['goods_count'];

■この方法でパラメータの受け渡しに成功しました。
スポンサーサイト



管理者にだけ表示を許可する
Top
http://akb48boys.blog39.fc2.com/tb.php/2-77223839
copyright © 2011 BreathTake all rights reserved. / Template By innerlife02
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。