PHP和Javascript之间的通信

时间:2012-12-09 20:28:05

标签: php javascript

我想从PHP发送一些数据到Javascript。(这两个文件是同一文件夹中的不同文件) 例如,如果我在PHP方面计算一些值,我想将数据发送到javascript并使用数据。 我怎么能这样做?

5 个答案:

答案 0 :(得分:5)

有一个名为AJAX的完整技术,其中包含大量tutorials on the internet

已经有一个很棒且易于部署的实施 - within jQuery

答案 1 :(得分:3)

<script type='text/javascript'>
var myVar = <?php echo $myVar; ?>;
</script>

简而言之。有更复杂的沟通方式。

答案 2 :(得分:3)

在实践中,您可以使用:

FILE:index.php

<HTML>
    <body>      
        <input type="text" id="test" value="123"><br>
        <input type="button" id="btn" onclick="send_to_php()" value="send to php">

        <script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
        <script>

                function send_to_php() {
                        $.ajax({
                            url: 'js_php.php',
                            type: 'POST',               
                            // Form data
                            data: function(){
                                var data = new FormData();
                                data.append('test', $("#test").val() );     
                                return data;
                            }(),
                            success: function (data) {
                                var obj = JSON.parse(data);
                                $("#test").val( obj.result );                   
                            },
                            error: function (data) {
                                console.log(data);
                            },
                            complete: function () {                 

                            },
                            cache: false,
                            contentType: false,
                            processData: false
                        });
                }

        </script>
    </body>
</HTML>

文件:js_php.php

<?php
    //FILE: js_php.php

    $test = $_POST["test"];
    $test .= "456";

    $arrResult = array(     
        'result' => $test
    );          

    print json_encode($arrResult);
    die();
?>

文件“index.php”是使用jQuery Ajax方法在JavaScript和PHP之间进行的通信。 单击“发送到php”按钮将运行“send_to_php()”,它将获取输入id“test”的值并通过ajax发送“js_php.php”文件。 反过来,文件“js_php.php”将接收此变量作为POST,修改并以JSON格式打印该值。 由ajax函数“send_to_php()”实现的方法将“监听”所有“js_php.php”打印。

返回成功后,javascript转换打印在JSON对象上的文本“js_php.php”,然后JS能够在javascript代码中处理:

success: function (data) {
    var obj = JSON.parse (data);
    $("# test").val(obj.result);
},

答案 3 :(得分:2)

看看这个AJAX教程:http://news.php.net/php.general/219164

答案 4 :(得分:1)

在PHP页面的脚本标记中分配JavaScript全局变量,并在之后包含其他javascript文件。

样品:

<html>
  <head>
    <script type='text/javascript'>var testGlobal = <?php echo $globalJSValue ?></script>
    <script type='text/javascript' src="url"></script>
    <script type='text/javascript' src ="url"></script>
  </head>
</html>

testGlobal变量现在可用于两个javascript文件。