Выбор значений из выпадающего списка

У меня есть 2 комбинированных списка.

<select name="ticketType">
<option selected>Ticket type</option>
<option value="55">Promo pass</option>
<option value="65">Regular pass</option>
</select>
<select name="campingNumber">
<option selected>Camping spots</option>
<option value="0">0</option>
<option value="30">1</option>
<option value="50">2</option>
<option value="70">3</option>
<option value="90">4</option>
<option value="110">5</option>
<option value="130">6</option>
</select>
<p>Price: € <span id="price"></span></p>

То, что я хочу сделать, это взять значения из обоих и сложить их вместе, все работает, но если я выберу другое значение из выпадающего списка, оно будет продолжать складываться вместе в общую сумму.
Это мой jquery:

var price=0;
$(document).ready(
function() {
$('select[name=ticketType]').change(
function(){
price =price +  parseInt($(this).val());
$('#price').text(price);
}
);
}
);
$(document).ready(
function() {
$('select[name=campingNumber]').change(
function(){
price =price +  parseInt($(this).val());
$('#price').text(price);
}
);
}
);

И эти значения я хочу обновить в базе данных, для билета все работает нормально, но для номера для кемпинга, значение — это цена места для кемпинга, а числа от 0 до 6 — сколько людей вы покупаете место для кемпинга, как я могу добавить это к таблице в базе данных?
Для базы данных у меня есть следующая таблица:

person_nb (int 10)
price (int 10)

Таким образом, значение из числа кемпинга я хочу добавить к цене, а в person_nb я хочу значение между списком для кемпинга номер.

$query2 = $conn-> prepare("INSERT INTO user_acc (email, ticket_price) VALUES (:email2, :ticket);");
$query2->bindParam(':email2', $email);' '$query2->bindParam(':ticket', $ticketType);
$query3 = $conn->prepare("INSERT INTO reservation (price, person_nb) VALUES (:price, :personNumber);");
$query3-> bindParam(':price', $campingPrice);
$query3-> bindParam(':personNumber', $totalNumberOfPersons);

Так что это запросы, но для totalNumberOfPersons я не знаю, как получить значение. Например, «1» цена составляет 30, а количество человек должно быть 1.

2

Решение

Вы продолжаете добавлять к итогу без сброса каких-либо значений, поэтому попробуйте это:

 var price=0;
var pricex = 0;
var pricey = 0;
$(document).ready(
function() {
$('select[name=ticketType]').change(
function(){
pricex = parseInt($(this).val());
price = pricex + pricey;
$('#price').text(price);
}
);
}
);
$(document).ready(
function() {
$('select[name=campingNumber]').change(
function(){
pricey = parseInt($(this).val());
price = pricex + pricey;
$('#price').text(price);
}
);
}
);
1

Другие решения

Попробуй это

var price;
$(document).ready(
function() {
$('select[name=ticketType]').change(
function(){
price=0;
price =price +  parseInt($(this).val()) +  parseInt($('[name="campingNumber"]').val());
$('#price').text(price);
}
);
}
);
$(document).ready(
function() {
$('select[name=campingNumber]').change(
function(){
price=0;
price =price +  parseInt($(this).val()) +  parseInt($('[name="ticketType"]').val());
$('#price').text(price);
}
);
}
);
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector