У меня проблема, я хочу получить некоторые данные из базы данных MySQL (что не проблема).
Допустим, я хочу все данные из столбца «Тикеткостен»
$result = $wpdb->get_results( "SELECT * FROM prijzen");
foreach ( $result as $print ) {
$ticketkosten = $print->Ticketkosten;
}
Затем я хочу получить все эти данные и передать все данные из «Ticketkosten» в функцию javascript, которая затем производит расчет и отображает окончательные цены.
Причина, по которой я хочу это сделать, заключается в том, что я использую «комбинированный список», и когда я изменяю значение в этом поле, расчет должен быть выполнен снова в режиме реального времени.
Код JavaScript, который у меня есть сейчас:
var aantal_boekingen= new Array();
aantal_boekingen["option1"]=1;
aantal_boekingen["option2"]=2;
aantal_boekingen["option3"]=3;
aantal_boekingen["option4"]=4;
aantal_boekingen["option5"]=5;
var ticketkosten = 12; //THIS SHOULD BE THE MYSQL "TICKETPRIJZEN" DATA
var boekingskosten = 1;
var transactiekosten = 0.29;function boekingen() {
var aantalBoekingen=0;
var theForm = document.forms["vergelijk_form"];
var selectedBoekingen = theForm.elements["aantal_boekingen"];
aantalBoekingen = aantal_boekingen[selectedBoekingen.value];
return aantalBoekingen;
}
function calculateTotal() {
var ticketprijs = ticketkosten + ((boekingskosten + transactiekosten) / boekingen());
var totaalPrijs = ticketprijs / boekingen();
var x = document.getElementsByClassName("totalPrice");
var i;
for (i = 0; i < x.length; i++) {
x[i].innerHTML = "€"+totaalPrijs.toFixed(2);
}
}
Билкостен, который вы видите, теперь жестко запрограммирован, я хочу, чтобы эта переменная тиккостена изменялась в данные базы данных.
Код javascript теперь работает, но я хочу, чтобы он не был жестко закодирован.
Итак, вкратце: я хочу вывести цены «Ticketkosten» из базы данных, затем передать их из php в javascript и сделать расчет с этими ценами.
Может кто-нибудь мне помочь? Я застрял больше недели.
Есть много решений для этого.
Где твой код JavaScript? В файле PHP? В файле JS?
Если это в файле PHP, вы можете сделать:
var ticketkosten = <?= $ticketkosten ?>;
Где $ ticketkosten — это значение из вашей базы данных.
Если вы находитесь в файле JS. Вы можете получить значение из атрибута данных следующим образом:
var ticketkosten = document.getElementById('oneDomElement').getAttribute('data-ticketkosten');
куда oneDomElement
может быть любым элементом HTML, который вы хотите (скрытым или нет). Он содержит data-attribute
со значением из базы данных.
Других решений пока нет …