2017-07-30 29 views
0

ブランドを選択した後、ブランドを選択した後に選択オプションがありますが、ブランド名を取得/表示することもできますが、ページ。データベースからの選択オプションのテーブルに他の値を表示

<?php 
require_once 'config.php'; 
echo '<select class="form-control action" name="tran_description" value="<? 
php echo $tran_description; ?>" style="background-color:#F0F0F0">'; 
$sql = mysqli_query($mysqli, 'SELECT * FROM products order by product_id'); 
while ($row = $sql->fetch_assoc()){ 
echo '<option id="' . $row['product_id'] . '"'; 
echo ' value="' . $row['description'] . '" '; 
echo ' value="' . $row['price'] . '" '; 

if($row['description'] == $tran_description) { 
if($row['price'] == $tran_price) { 
$tran_price = $row['price']; 
echo ' selected="selected"'; 
} 
} 

if($row['product_id'] == $row['description']) { 

echo ' selected="selected"'; 
} 

echo '>'; 
echo $row['description']; 
echo '</option>';   

} 
echo '</select>'; 

?> 

私は説明の価値を得ることができますが、私はcouldntの価格です。ブランドや説明を表す1つの選択肢では、私が選択したブランドの価格値も変数に代入したいので、それを見ずにバックコードで算術演算を行うことができます。

答えて

0
あなたはこのようにすることができ、他のは、DOM【選択正しい方法では無視されている間のみ、最初の属性は、単一の選択で複数の値を格納するために使用されている間違ったHTMLの構造を使用している

<select name=""> 
    <option value="{'num_sequence':[0,1,2,3]}">Option one</option> 
    <option value="{'foo':'bar','one':'two'}">Option two</option> 
</select> 

あなたのケースでは、このようにする必要があります:あなたがやる値を取得するためにその後

echo '<option id="' . $row['product_id'] . '"'; 
// echo ' value="{ /"description:/"' . $row['description'] . ', /"price:/"' . $row['price'] . ' }" '; 
echo ' value="' . 
    json_encode(['description'=>$row['description'], 'price'=>$row['price']) . 
    '">"; 

です:

$description = $_POST['NameOfSelectInput']['description']; 
$price = $_POST['NameOfSelectInput']['price']; 

あなたはjQueryのを使用して、JavaScriptで値を取得したい場合、たとえば、あなたができる:

var value = JSON.parse($('#select_id').val()); // use id of your select control 
var price = value.price; 
var description = value.description; 

あなたは適切なエラーチェックを行う必要があります...

詳細はこちらを参照してください: Can an Option in a Select tag carry multiple values?

+0

私が意味するのは、ブランドや説明を表す1つの選択肢のオプションです。選択したブランドの価格値を変数に割り当てる必要があるため、表示せずにバックコードで算術演算を行うことができます。 – Romeo

+0

それは彼が提案しているものです。私はオプション値をエンコードするためにjson_encodeを使って修正します。データを抽出するには、値を選択してJSON.parseを使用します(リロードなしで表示する場合)。スラッシュもスラッシュで、バックスラッシュでなければなりません。 – RichGoldMD

+0

私はあなたのコードIslan Mahajanを使用しようとしましたが、それでも私は傾けることができません。 – Romeo

関連する問題