2

これは難しい質問ですね。私は HTML5 と JS を使用してショッピング カートの Web サイトを作成しています。

現在、「今すぐ購入」ボタンは、ユーザーが自分の情報を入力して購入できる 1 ページにリンクするタグにあり、このページは「チェックアウト」と呼ばれます。この「チェックアウト」ページに、彼が購入したい商品の価格を表示したいと思います。

例) ユーザーが $10.00 相当の本をクリックし、[今すぐ購入] ボタンをクリックします。このボタンをクリックすると、入力フォームが表示される確認ページに移動しますが、ページには購入する商品の価格は表示されません。

ここに私の問題があります。製品ごとに異なるページを作成する以外に、これに対する解決策は考えられません (9 つの製品しかありません)。

また、露骨に明らかでない場合、私はまだ JS の初心者です。9つの個別のページを作成せずに、特定の各アイテムの「チェックアウト」ページに価格を表示する方法を理解するのに役立つ助けをいただければ幸いです. ありがとうございました。

4

3 に答える 3

3

最善の方法は、サーバー側のソリューションを使用することです。クライアントは自分のフォームをサーバーに送信し、そこでフォームが評価され、それに応じた html ページがレンダリングされます。

他の唯一の方法は、Cookie またはローカル ストレージのいずれかを使用することですが、それはかなり見苦しいものです。

php と mysql に関するいくつかのチュートリアルを必ず読む必要がありますが、これを実現する方法の大まかな概要を説明します。

次のように、ページにフォームを提供します。

<form method="post" action="your-serverside-phpscript-that-processes-your-form.php>
   How many Ipads you wanna buy:<input type="number" name="ipads">
   <button type="submit">
</form>

サーバー側で、php-script がフォームを評価できるようになりました。

すべてのフォームフィールドは$_POST配列に格納されます。( $_POST["ipads"] ) は、ユーザーがフォームに入力した値を取得します。これらの値をデータベースにまだ保存する必要はありません。フォームの値を評価し、それに応じたデータ (合計金額) を使用してチェックアウト ページを作成します。ここで、ユーザーがチェックアウト フォームを送信します。これを再度処理してデータベースに保存します。

このサーバー側の部分がどのように機能するかは書き留めません (疲れすぎて申し訳ありません)。そこにはたくさんの tuts があります。Google で php+mysql を検索してください。

于 2012-04-27T21:00:04.687 に答える
3

私の理解が正しければ、複数のページで取得できる Javascript に変数を格納する方法を尋ねています。

これを行う標準的な方法は、Cookieを使用することです。ネイティブ Cookie ライブラリはややこしいので、このようなCookie ライブラリを使用することをお勧めします。

しかし、あなたの質問はタグ付けされているため、これについてhtml5は HTML5 ソリューションを受け入れている可能性がありますsessionStorage。これは Cookie よりもはるかに簡単です。

sessionStorage.setItem("price", 100);
var price = sessionStorage.getItem("price");
于 2012-04-27T21:02:14.097 に答える
2

このデータをすべてクライアント側で保持したいので、Amplify.Storeを確認することをお勧めします。完全な開示では、私は現在、その背後にある会社に雇用されています - しかし、それは素晴らしく、無料です.

データの保存は簡単です:

amplify.store( 'cart', { name: 'Book Title', price: 10.99 } );

少し後でこれにアクセスするには、次のように呼び出すだけです。

amplify.store( 'cart' );

これにより、現在読み込まれているすべての製品を取得できるオブジェクトが返されます。Amplify はシステムを評価し、最適な保存方法を判断して使用します。これにより、プレートから推測作業がすべて削除され、やりたいことだけを行うことができます。

クライアント側でデータを保持することは便利ですが、決して安全ではないことを理解してください。金銭的な性質の取引や問題を扱うときは、常に消費者の手から数字を遠ざける必要があります.

通常、このようなデータはサーバー側、セッション内、データベース内、またはその両方の組み合わせ内に保存されます。ただし、リスクを理解し、モデルがこの種の永続性を許可している場合は、これを解決策として自由に使用してください。

于 2012-04-27T21:02:22.437 に答える