2012-02-21 90 views
2

可能重複:
How to pass JS variable to php?
pass a js variable to a php variable傳遞一個HTML頁面內JavaScript值,並把它放在一個PHP變量

我傳遞一個javascript從腳本的HTML頁面使用document.getElementById.innerHTML。該值在我的html頁面中正確地打印出來...現在我知道可以在html頁面中打印此值並且(總是在同一頁面中)將它放在一個php變量中?

+0

1. PHP運行在服務器上。生成發送給瀏覽器的HTML代碼。 2. Javascript在瀏覽器中運行。你不能真的把東西放在這個步驟中生成的PHP變量中,因爲PHP已經很久了。 – kapa 2012-02-21 11:17:33

回答

5

在PHP

創建一個隱藏的變量這樣

<form method="post"> 
     <input type="hidden" name="hiddenField" id="hiddenField"/> 
</form> 
在Javascript設定值

該變量

document.getElementById("hiddenField").value=6; 

$value=$_POST['hiddenField']; 
0

之後你看到一個網頁,PHP腳本完成,所以你只能通過Ajax發送VAR到PHP文件,並再次運行該腳本。使用AJAX

一個簡單的方法是jquery

0

我能想到的兩種方法可以做到這一點:

使用XMLHttpRequest對象發送異步請求,其記錄該值一些PHP頁面。

在PHP [holdvalue.php]側:

<?php 
    $myval = $_GET['sentval']; 
    // Do something with $myval 
?> 

在JavaScript端:

var x = 34; //Some interesting value 
var xmlhttp = new XMLHttpRequest(); 
xmlhttp.open("GET", "holdvalue.php/?sentval=" + x, true); 
xmlhttp.send(); 

OR,使用隱藏的表單字段。在HTML側:

<form id="sendform" method="get" action="holdvalue.php"> 
<input type="hidden" id="sentval" /> 
<input type="submit" /> 
</form> 

而關於JS側: 的document.getElementById( 「sentval」)值= X; //以下內容或每當用戶提交表單時發送: document.getElementById(「sendform」)。submit();

相關問題