javascript - 如何将变量 javascript 传递给 php

标签 javascript php

我需要一些帮助,我将使用 morris.js 创建图表,但当我在 php 标签中的管道 mongoDB 中使用 detailIp 时,我发现一些问题(如下所示)但没有结果显示。我不知道为什么。 如何传递detailIp以便它可以在php标签中使用? 谢谢之前,抱歉我的英语太糟糕了:( 这是我的代码:

     <script>

                    $(document).on("click", ".open-detail", function () {

                         var detailIP = $(this).data('id'); 
                         document.getElementById("header_ip").innerHTML = "IP "+detailIP;
                         document.getElementById('ip').innerHTML =detailIP;


                          Morris.Area({
                          element: 'graph1',
                          behaveLikeLine: true,
                          data: [

                          <?php 
                            ini_set('max_execution_time', 600);
                            ini_set('memory_limit', '2048M');
                            $m = new MongoClient("192.168.80.20");
                            $db= $m->blacklist;
                            $col=$db->score;
                            $cursor=$col->find(array("ip_blacklist"=>"'".detailIP."'"));
                            $detail_ip=array();
                            foreach ($cursor as $document) {
                            $detail_ip[]=$document;
                          }

                            $score=array();
                            $time=array();
                            for ($a=0; $a < sizeof($detail_ip); $a++) { 
                            $score[]=$detail_ip[$a]["score"];
                            $time[]=date("Y-m-d H:i:s",$detail_ip[$a]["timestamp"]->sec);
                          }
                            for ($i=0; $i < sizeof($detail_ip) ; $i++) { 
                                echo "{date:'".$time[$i]."',count:".$score[$i]."},";
                            }
                        ?>
                          ],
                          xkey: 'date',
                          ykeys: ['count'],
                          labels: ['Y']
                        });
                    if($('#graph1').find('svg').length > 1){
                       $('#graph1 svg:first').remove();
                       $(".morris-hover:last").remove();
                                }
                    });

</script>

最佳答案

你可以做ajax调用将 js 变量传递给 php 代码。 这是一个例子。

$.ajax({
             url: "/your_controller_the_php_code/the_action_the_php_function",
             dataType: "json",
             data: {                         
                 your_js_variable: detailIP                  
             },
             success: function( data ) {
               /*this is where you do what you want to do  when you get the response from your php code*/
          }
      });

希望对你有帮助

关于javascript - 如何将变量 javascript 传递给 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46620425/

相关文章:

javascript - 将 WebGL 非连续线渲染为单个对象

javascript - 使用 slideToggle 隐藏/显示高级选项,子元素可见

javascript - jquery 选择自定义属性未定义的 anchor

php - 从 PHP 脚本运行 Drush 命令

php - WooCommerce 结帐布局

PHP PDO 查询返回空

javascript - 无法解析 'semantic-ui-react'

javascript - window.onload 内的函数

php - 使用 php/javascript 将 mysql 表动态导出到所有 Excel 版本...可能吗?

php - mysql php 复杂查询