簡體   English   中英

將Java腳本函數的結果發送到PHP

[英]Send the results of a java script function to PHP

我正在嘗試將javascript函數的結果發送到PHP文件,因此可以將其用作PHP變量。

這是我要在PHP文件中使用的功能:

function password()
{
    var text = "";
    var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

    for( var i=0; i < 5; i++ )
        text += possible.charAt(Math.floor(Math.random() * possible.length));

    return text;


}

這是一個原型(因此我不擔心安全風險)

謝謝。

更新:有人可以告訴我一個如何將其提交為表格嗎?

要將數據發送到PHP程序(在Web服務器上運行),您必須使Web瀏覽器(運行Java腳本)發出HTTP請求。 最常見的選擇是

  • 提交表格
  • 發出Ajax請求

無法將結果從javascript函數傳遞到PHP代碼... PHP代碼在服務器端運行,而javascript在客戶端運行

您必須撥打AJAX電話,然后以這種方式發送結果。

那么,該功能是否正在使用Javascript在客戶端上執行? 您想在服務器端PHP中使用它的結果嗎? 我建議您提出AJAX請求或提交表格。

如果您是在網絡服務器上運行此程序,則應使用GET,POST或Cookie方法共享變量,並執行HTTP請求以將其發送到php腳本。

您可以使用AJAX在php中發送您的值! :)

function password(){
    var text = "";
    var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

    for( var i=0; i < 5; i++ )
        text += possible.charAt(Math.floor(Math.random() * possible.length));

    return text;


}

var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://www.yourSite.com/ajax.php');
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.addEventListener('readystatechange', function() {
            if (xhr.readyState === 4 && && xhr.status === 200) { 

                console.log(xhr.responseText);
            }
        }, false);
xhr.send('text=' + password());

Post通過表單發送數據,因此,我們應該添加一個content-type

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

然后在您的php代碼中:只需執行以下操作:

<?php echo $_POST['text']; ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM