如何从joomla模块中的ajax获取数据库值?

时间:2013-12-31 07:57:58

标签: jquery ajax joomla

我正在创建一个模块,我想从ajax获取数据库值。 任何人都有这个问题的解决方案或任何例子请帮助我... 任何人都可以给我一个正确的方法.......

这是我的jquery代码 -

jQuery('.type').bind('click', function() {
      var feedId = jQuery(this).attr('id');
      alert(feedId);
    jQuery.ajax({
        type: "POST",
        url: "modules/mod_feedback/ajax.php",
        data: {"Type":feedId},
        success: function(reviews){
            //jQuery(".show").html(response);
            alert(reviews);
        }
    });
  });

这是我的ajax.php代码 -

require_once( 'helper.php' ); 
$reviews = modfeedbackHelper::getFeedbackResultIdea();
echo $reviews;

2 个答案:

答案 0 :(得分:0)

这是ajax Call。

 $.ajax({
            type: "POST",
            url: "//PATH of ajax.php",
            data: { //Data to pass},
            cache: false,
                success: function(html)
                {
                    //DO SOMETHING  
                }
            });

和ajax.php

 require_once( 'helper.php' );

 $reviews = modfeedbackHelper::getFeedbackResultIdea();

 echo $reviews; exit;

应该这样做:)))

答案 1 :(得分:0)

首先,你试图对模块内部的文件进行ajax调用,而不是模块的一部分,所以它就像外部php文件一样

modules/mod_feedback/ajax.php错了。你必须像下面那样对相关的组件控制器进行ajax调用。

jQuery('.type').bind('click', function() {
      var feedId = jQuery(this).attr('id');
      alert(feedId);
    jQuery.ajax({
        type: "POST",
        url: "index.php?option=com_yourcomponent&task=yourcontroller.your_function",
        data: {"Type":feedId},
        success: function(reviews){
            //jQuery(".show").html(response);
            alert(reviews);
        }
    });
  });

然后在控制器文件中添加一个名为your_function

的函数

并在您的函数中包含以下代码

require_once( JPATH_SITE.'/modules/mod_feedback/helper.php' );

 $reviews = modfeedbackHelper::getFeedbackResultIdea();

 echo $reviews; exit;

然后它将工作,否则你必须加载Joomla框架工作到你的ajax.php这是一个坏主意。尽量遵循正确的方法。

希望它的帮助..