1
クエリ結果(単なる製品名とその単価のマッピング)をJSONファイルに出力する次のPHPコードがあります。 PHPコードは、ドロップダウンリストにも入力します。選択したドロップダウン値に基づいてテキストフィールドに値を設定します
私はJSONファイルを作成し、ドロップダウンリストに値を設定する際に問題はありません。私の主な関心事は次のとおりです。
ユーザがドロップダウンリストから製品名を選択すると、製品の対応単価を表示するために別のテキストフィールドを自動入力するにはどうすればよいですか?
<label for="p_name">Product Name</label>
<div class="input-group">
<div class="input-group-btn">
<input type="text" class="form-control" name="p_name" id="p_name" style="width: 300px;" required>
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> <span class="caret"></span></button>
<ul class="dropdown-menu" role="menu" style="width: 300px;">
<?php
$connstring = pg_connect("host=localhost dbname=myDB user=postgres password=password")
or die('Could not connect: ' . pg_last_error());
$select = "SELECT p_name, unit_price FROM Product";
$executeSelect = pg_query($select) or die('Postgresql: ' . pg_last_error());
$result = array();
while ($line = pg_fetch_array($executeSelect, null, PGSQL_ASSOC)) {
$index = 0;
foreach ($line as $col_value) {
if ($index % 2 == 0)
{
//Display Product Name in the drop down list
echo "<li><a>$col_value</a></li>";
$index++;
}
else
{
$index++;
}
}
//Store query output to the result array
$result[] = $line;
}
//Save the query output to a JSON file
file_put_contents('C:\Apache\htdocs\productList.json', json_encode($result), LOCK_EX);
pg_free_result($executeSelect);
pg_close($connstring);
?>
</ul>
</div><!-- /btn-group -->
</div><!-- /input-group -->
<label for="unit_price">Unit Price</label>
<input type="number" class="form-control" name="unit_price" id="unit_price"></input>
なぜJSONファイルをサーバーにロードしますか?すでにJSONファイルをクライアント側で解析するべきではないですか? – wowomg
JSONファイルは 'htdocs /'フォルダ内にあります。つまり、サーバ側に存在します。処理を行うには、ファイルをクライアント側にロードするだけです。また、クライアント側はローカルファイルシステムにアクセスすることはありません。 –
ありがとうございますが、どうすればいいですか?申し訳ありませんが、私は非常にこれに新しいです – wowomg