傳遞參數給伺服器端的PHP檔案中的特定函數(從JS),然後將結果傳回給呼叫該函數的JS函數
P粉593649715
P粉593649715 2024-01-16 22:27:27
0
1
435

基本上我正在做的是創建一個圖形計算器(使用 BokehJS),該計算器目前透過 html 取得一些輸入,然後 javascript 讀取資料並進行計算,然後輸出結果圖形。

問題是我們不希望使用者能夠看到所有的計算程式碼。 如果他們能看到 getter 和 setter 方法就很好了。

我需要它做的是:

  1. 取得 HTML 頁面上的使用者輸入
  2. 使用 JavaScript 讀取輸入(客戶端)
  3. 將讀取的輸入資料傳遞給 PHP(在 WordPress 伺服器上)進行計算
  4. #PHP 將結果資料傳回 JS
  5. JS(客戶端)處理要做什麼以及如何顯示資料

我們正在使用 WordPress 伺服器,目前我只是在本機上進行測試,因此允許測試和部署的方式會很棒。

目前這是我所擁有的:

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

測試.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";
}
?>

我希望擁有它,這樣我就可以在一個文件中擁有多個函數,我看到的大多數解決方案每個文件中只有 1 個函數。

mypage.html

<!-- Just a simple button to call the main Javascript function-->
<input type="button" value="Test function" onclick="test_test()">

所以基本上,總體問題是我如何更改 javascript 請求,使其能夠將參數傳遞給伺服器端 PHP,然後返回呼叫 js 函數

編輯:如果有一種方法可以使用伺服器端 javascript 而不是 PHP,那就更好了,因為腳本已經用 JS 編寫,除非必要,否則我不想用 PHP 重寫。

P粉593649715
P粉593649715

全部回覆(1)
P粉129168206

我是如何解決類似問題的 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 "
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!