2012-10-02 56 views
0

我想为我的joomla页面设置一些小的ajax支持,详细说明:我想通过ajax将日志消息从前端发送到后端,并将它们存储在数据库中。joomla 2.5 ajax api

在Drupal这可以通过添加路径和模块内部的回调来完成的,所以这可怎么在的Joomla 2.5来实现,以便有像网址:

http://www.domain.com/log这导致了函数调用?

问候..

+0

你尝试这个 - http://docs.joomla.org/Ajax_using_MooTools – Irfan

+0

导致组件......是不是有什么用更少的负担? – philipp

+0

@philipp我已经通过创建独立工作的ajax帮助程序文件来完成此操作,但是如果您想要最佳解决方案,则最好为其创建一个组件 –

回答

0

的正确方法是创建一个组件来处理呼叫,但你写的大部分时间似乎有点矫枉过正只是一个模块。 另一种方法是创建一个使用Joomla库的独立php文件。这个文件可以很容易地从任何你喜欢的地方调用。这是如Joomla与具有所有图书馆的利用可用一个迷你版:

define('DS', DIRECTORY_SEPARATOR); 
if (!defined('JPATH_BASE')){ 
    define('JPATH_BASE', '..'.DS.'..'.DS.'..'); 
} 
define('JPATH_LIBRARIES', JPATH_BASE . DS . 'libraries'); 
require_once JPATH_LIBRARIES . DS . 'import.php'; 
$var = JRequest::getVar('my_var'); 

要访问数据库对象时,你会需要,因为这个文件手动设置选项为DB-对象将不会访问配置文件(当然你可以编程)。

$option = array(); //prevent problems 
$option['driver']   = 'mysql';            // Database driver name 
$option['host']     = 'db.myhost.com';    // Database host name 
$option['user']     = 'myuser';       // User for database authentication 
$option['password'] = 'mypass';   // Password for database authentication 
$option['database'] = 'bigdatabase';      // Database name 
$option['prefix']   = 'abc_';             // Database prefix (may be empty) 
$db = & JDatabase::getInstance($option); 
+0

谢谢!我会看看它! – philipp