从javascript变量中分配一个php变量


Assigning a php variable from a javascript variable

我试图设置一个php变量,以便在以后的页面中使用,而不使用$_GET或$_POST。我还将相同的变量分配给文本框。我已经有了分配文本框变量的函数,但没有分配php变量。

function setText(data){
  document.getElementById("filtext").value = data.value
  // <?php $_SESSION["provid"] = ?> 
  // I am trying to set the php variable above
}

任何帮助都将非常感激!

我认为在这种情况下,设置cookie将是最简单的解决方案。通过使用Javascript设置cookie, cookie的键和值将随着下一个页面请求自动发送到PHP。

参见:

  • http://www.w3schools.com/js/js_cookies.asp,特别是"一个设置Cookie的函数"
  • http://www.w3schools.com/php/php_cookies.asp,特别是"如何检索Cookie值?"

可以使用AJAX发送服务器端语言的值。

function setPHPVariable()
{
    var myAjax;
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
            myAjax=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        myAjax=new ActiveXObject("Microsoft.XMLHTTP");
    }
    myAjax.onreadystatechange=function()
    {
        if (myAjax.readyState==4 && myAjax.status==200)
        {
            alert('PHP returned: ' + myAjax.responseText);
        }
    }
    myAjax.open("GET","my_file.php?my_var=12345", true);
    myAjax.send();
}
在你的PHP代码中,你可以使用:
$myVar = $_GET['my_var'];
$_SESSION['my_var'] = $myVar; // or even $_SESSION['my_var'] =  $_GET['my_var'];
http://www.w3schools.com/ajax/ajax_examples.asp