PHP:如何将数据库值传递到一个javascript / jQuery函数(php : how to

2019-09-02 05:31发布

我采取的标签在我的项目特色。 在我的演示标签,我发现他们是路过的名字在JavaScript功能为autocomple。

这是我的演示项目的功能,

   <script>
   $(function()
      {
          var sampleTags = ['c++', 'scala', 'groovy', 'haskell', 'perl', 'erlang', 'apl', 'cobol', 'go', 'lua'];
      ..................
      .................

所以,我想从我的PHP控制器,该功能通过值,序从我的数据库表中获取自动完成值

For example i am getting tags values from my db in my Controller like this:

 ` $data["query"] = $this->ordermodel->fetch_orderlist();`
   $this->load->view('tagpage', $data);  //loading my page tag page where above function exists

现在,我怎么能传递$data["query"]值到JavaScript函数上面? 请帮忙

Answer 1:

你可以回声变量在使用PHP的页面json_encode 。 此功能将转换为PHP数组或对象转换成JSON对象,JavaScript可以一起工作:

<script>
$(function() {
      var sampleTags = <?php echo json_encode($query); ?>;
})();
</script>

但更好的方法是通过Ajax请求这些值。 假设你有一个PHP脚本命名values.php

<?php
    #...
    #assign $query here
    #...
    echo json_encode($query);

然后,在JavaScript(要使用在页面上sampleTags变量),你可以使用jQuery的.ajax功能进行简单的Ajax请求:

<script>
var sampleTags;

$.ajax({
    url: 'values.php'
}).done(function(data) {
    if (data) {
       sampleTags = data;
    }
});
</script>

我没有测试过这个例子。 显然,你会想调整它以适应你的环境。



Answer 2:

你将不得不为此编写一个Ajax功能

$.ajax(
    url     :   "<?php echo site_url('controller/method')?>",
    type    :   'POST',
    data    :   'para=1',
    success :   function(data)
    {
        if(data){
            var sampleTags  =   data;
        }
    }
);


Answer 3:

只要您的呼应PHP变量

 $(function()
      {
          var sampleTags = '<?php echo $data["query"]; ?>'


文章来源: php : how to pass database value into a javascript/jquery function