Rumah > Soal Jawab > teks badan
Pada asasnya apa yang saya lakukan ialah mencipta kalkulator grafik (menggunakan BokehJS) yang pada masa ini mengambil beberapa input melalui html, kemudian javascript membaca data dan melakukan pengiraan, kemudian mengeluarkan graf yang terhasil.
Masalahnya ialah kami tidak mahu pengguna dapat melihat semua kod pengiraan. Alangkah baiknya jika mereka dapat melihat kaedah getter dan setter.
Apa yang perlu saya lakukan ialah:
Kami menggunakan pelayan WordPress dan pada masa ini saya hanya menguji pada mesin tempatan saya jadi cara untuk membenarkan ujian dan penggunaan adalah bagus.
Pada masa ini inilah yang saya ada:
myjavascript.js
function test_test(){ const staticPNVals = getStaticPN(); //send this to php file as parameter to function const ret_array = []; //The below needs to be changed, idk how to do it const xmlhttp = new XMLHttpRequest(); xmlhttp.onload = function() { const myObj = JSON.parse(this.responseText); ret_array = myObj; } xmlhttp.open("GET", "test.php"); xmlhttp.send(); console.log("ret_array is " + ret_array); }
test.php
<?php function doStuff($myarr) { $myarr2 = array(); for ($x = 0; $x <= 10; $x++) { array_push($myarr2, $myarr[$x]); } return $myarr2; } function doOtherStuff(){ echo "Hello World"; } ?>
Saya ingin memilikinya supaya saya boleh mempunyai berbilang fungsi dalam satu fail, kebanyakan penyelesaian yang saya lihat hanya mempunyai 1 fungsi dalam setiap fail.
mypage.html
<!-- Just a simple button to call the main Javascript function--> <input type="button" value="Test function" onclick="test_test()">
Jadi pada asasnya, persoalan keseluruhan ialah bagaimana saya menukar permintaan javascript untuk dapat menghantar parameter ke PHP sisi pelayan dan kemudian kembali memanggil fungsi js
EDIT: Alangkah baiknya jika ada cara untuk menggunakan javascript sisi pelayan dan bukannya PHP, kerana skrip sudah ditulis dalam JS dan saya tidak mahu menulis semula dalam PHP melainkan perlu.
P粉1291682062024-01-17 12:15:40
Bagaimana saya menyelesaikan masalah yang sama JS
let formData = new formData(); formData.append("nameOfFunction","function you want to call"); formData.append("variableA","some value"); fetch("phpFileName.php"{body: formData,method: POST}) .then((response)=>response.text) .then((data)=>{ //do whatever })
PHP
$nameOfFunction = $_POST["nameOfFunction"]; // unsure past this point echo "