如何将JavaScript函数数据转换为PHP变量

时间:2009-01-07 05:02:20

标签: php javascript function

我正在使用PHP和JavaScript。我的JavaScript代码包含一个函数get_data():

function get_Data(){
    var name;
    var job;
    .....

    return buffer;
}

现在我有以下PHP代码。

<?php
    $i=0;
    $buffer_data;

    /* Here I need to get the value from JavaScript get_data() of buffer;
       and assign to variable $buffer_data. */
?>

如何将JavaScript函数数据分配到PHP变量?

5 个答案:

答案 0 :(得分:11)

使用jQuery将JavaScript变量发送到PHP文件:

$url = 'path/to/phpFile.php';

$.get($url, {name: get_name(), job: get_job()});

在您的PHP代码中,从$_GET['name']$_GET['job']获取变量,如下所示:

<?php
    $buffer_data['name'] = $_GET['name'];
    $buffer_data['job']  = $_GET['job'];
?>

答案 1 :(得分:1)

JavaScript代码在客户端执行,而PHP在服务器端执行,因此您必须将JavaScript值发送到服务器。这可能隐藏在$_POSTAjax中。

答案 2 :(得分:0)

您必须使用Ajax,因为服务器端代码无法调用客户端脚本,并且服务器端作用域上的结果可用。您可能必须在客户端进行Ajax调用,这将调用PHP变量。

答案 3 :(得分:0)

如果您没有经验或需要Ajax,那么只需将数据填入post / get,然后将数据发送回您的页面。

答案 4 :(得分:0)

    <script>
        function get_Data(){
            var name;
            var job;
            .....
            return buffer;
        }

        function getData()
        {
            var agree=confirm("get data?");
            if (agree)
            {
                document.getElementById('javascriptOutPut').value = get_Data();
                return true;
            }
            else
            {
                return false;
            }
        }
    </script>

    <form method="post" action="" onsubmit="return getData()"/>
        <input type="submit" name="save" />
        <input type="hidden" name="javascriptOutPut" id="javascriptOutPut"/>
    </form>

    <?php
        if(isset($_POST['save']))
        {
            var_dump($_POST['javascriptOutPut']);
        }
    ?>