2017-04-20 1 views
0

J'ai un problème, je veux obtenir des données à partir d'une base de données MySQL (ce qui n'est pas un problème). Disons que je veux toutes les données de la colonne « Ticketkosten »PHP, Javascript Obtenir des données mysql et faire des calculs en javascript

$result = $wpdb->get_results("SELECT * FROM prijzen"); 
foreach ($result as $print) { 
    $ticketkosten = $print->Ticketkosten; 
} 

Ensuite, je veux obtenir toutes ces données et de transmettre toutes les données de « Ticketkosten » à un funtion javascript, ce qui en fait alors un calcul et afficher la prix définitifs. La raison pour laquelle je veux faire ceci est parce que j'utilise un "combobox" et quand je change la valeur dans cette boîte le calcul doit être fait à nouveau en temps réel.

Le code javascript j'ai droit est maintenant:

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); 
    } 
} 

Le ticketkosten que vous voyez est codée en dur, ce que je veux est que cette variable change ticketkosten aux données de la base de données.

Le code javascript fonctionne maintenant, mais je ne veux pas qu'il soit codé en dur.

Donc en un mot: je veux obtenir les prix "Ticketkosten" de la base de données, puis le passer de php en javascript et faire un calcul avec ces prix.

Quelqu'un peut-il m'aider? Je suis coincé pour plus d'une semaine maintenant.

Répondre

1

Il existe de nombreuses solutions pour cela.

Où est votre code JavaScript? Dans un fichier PHP? Dans un fichier JS?

Si elle est dans un fichier PHP que vous pouvez faire:

var ticketkosten = <?= $ticketkosten ?>; 

Où ticketkosten $ est la valeur de votre base de données.

Si vous êtes dans un fichier JS. Vous pouvez obtenir la valeur d'un attribut de données comme ceci:

var ticketkosten = document.getElementById('oneDomElement').getAttribute('data-ticketkosten'); 

oneDomElement peut être tout élément HTML que vous voulez (caché ou non). Il contient un data-attribute avec la valeur de la base de données.

+0

Merci pour votre réponse. Tout est dans le même fichier PHP, Le code php est situé dans le corps et le javascript après le pied de page. Donc, la seule chose à faire est d'ajouter le var ticketkosten = ; ? Mes compétences javascript sont très basiques, si j'ai même les bases: P – Dutchdeveloper

+0

Oui, si votre code JavaScript qui définit le var 'ticketkosten' est après le code PHP qui connaît la valeur du ticketkosten, vous pouvez facilement faire' var ticketkosten = ; ' –

+0

Merci, ça fonctionne en quelque sorte. Le seul problème qui reste est qu'il ne prend que la dernière valeur de la colonne, disons 0,80 Mais pas les 1,20 et 1,00 – Dutchdeveloper