私はマルチステージのブートストラップフォームで作業を続けています。私はDBから情報を引き出そうとするロードブロッキングを打ちました。JQuery MySQLのデータをフェッチして変数に格納
- データはMySQLデータベースから取得する必要があります。
のメインページには、私は、以下の機能要件を持っているPHPで、
quote_tool.php命名されます。
- ユーザーはリクエストしたデータのみを受信する必要があります(つまり、ユーザーライセンスについての情報を含む行は、ユーザーがフォームにユーザーライセンスを含めるためにラジオボタンをオンにした場合にのみ取得する必要があります)。
- ページをリフレッシュ/リロードせずに情報をDBから呼び出す必要があります。
現在、私は次の列と私のDB内のテーブルを持っている:
3種類の製品が今、そのテーブルにあります。ユーザーはエンドポイントを含めることを希望するラジオを選択し、エンドポイントを含めるための量を入力できるように3つのチェックボックスがあります。
は、入力フィールドには、次のようになります。
<input type="text" readonly name="sum-9102-qty" class="summary-field sum-qty" id="sum-9102-qty">
:ユーザーはこの値を動的に次のフィールドに同様概要ページに更新され、ボックスと入力値をチェック
<label for="device-9102" class="form-partner-label"><input type="checkbox" class="quote-chkbox" id="9102-chk"> 9102 IP Phone</label>
<input type="text" name="9102-quantity" class="form-endpoint-qty form-control" id="form-partner-9102" readonly value="0">
この製品に関する概要ページには、2つのフィールドがあります。
- MSRP
- 型番
MSRPは、追加の計算に使用される隠しフィールドですが、部品番号が概要ページに表示されています。
ユーザがエンドポイント数量の値を入力すると、DBを呼び出して、MSRPと部品番号をrefEndpointsテーブルから取得する必要があります。
は、私は現在、ユーザーがフォーム上の「次へ」ボタンを押した時にDBを呼び出すための関数を構築しています、それは次のようになります。
//Call DB to fetch part number and msrp of 9102
$('#form-partner-9102').change(function()){
var quantity_9102 = $('#form-partner-9102').val();
if(quantity_9102 !== 0) {
}
});
これは私がで立ち往生していますポイントです。私はどのようにDBを呼び出すと、サマリーページの正しい入力フィールドに部品番号とMSRPの値を配置するか分からない。
あなたが探している技術は、AJAXと呼ばれています。高レベルでは、必要な入力を受け取り、DBからデータをフェッチし、出力を書き戻すサーバー側の「ページ」(HTMLページの代わりにJSONデータを出力するPHPファイル)を作成します。クライアント側のJavaScriptコードは、その "ページの" URLにAJAX要求を行い、POSTまたはGETパラメータとして値を指定し、応答を受け取ります。クライアント側のコードは、そのレスポンスを持つページ上で何が必要なのかを行います。 JavaScriptはDBとは通信しません.PHPはその相互作用を仲介します。 – David