Здравствуйте, представляю вольный перевод (поскольку не знаю английский -) инструкции по установке xajax в фреймворк CodeIgniter. Оригинал: wiki:CI с небольшими дополнениями от себя.
xAjax — это библиотека классов для PHP с открытым исходным кодом. Используя эту библиотеку можно не углубляясь в изучение javascript начать использовать технологию ajax в своих проектах. xAjax сам формирует нужный javascript — код.
1. Переписать файлы из xajax_core/ в /application/libraries
2. Переименовать xajax.inc.php в xajax.php
3. Создать директорию /application/init и положить в неё новый файл init_ajax.php с таким содержимым:
4. Скопировать директорию xajax_js/ в папку с файлами .js вашего проекта. Изменять имя директории нельзя.
5. Измените файл .htaccess что бы его содержимое напоминало следующее:
6. Поменяйте кодировку на нужную (например: cp1251). В файле xajax.php найдите строчку (она в начале) и внесите изменения:
7. Если вам нужен тест для проверки работоспособности, то создайте контроллер testxajax и запишите в него следующий код:
8. Создайте в директории application/views/template/ файл index.php:
Ну вот и всё, успехов!
xAjax — это библиотека классов для PHP с открытым исходным кодом. Используя эту библиотеку можно не углубляясь в изучение javascript начать использовать технологию ajax в своих проектах. xAjax сам формирует нужный javascript — код.
Итак, для того чтобы установить xAjax в CI необходимо:
1. Переписать файлы из xajax_core/ в /application/libraries
2. Переименовать xajax.inc.php в xajax.php
3. Создать директорию /application/init и положить в неё новый файл init_ajax.php с таким содержимым:
//Содержимое файла init_ajax
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
if ( ! class_exists('xajax'))
{
require_once(APPPATH.'libraries/xajax'.EXT);
}
$obj =& get_instance();
$obj->xajax = new xajax();
$obj->ci_is_loaded[] = 'xajax';
?>
4. Скопировать директорию xajax_js/ в папку с файлами .js вашего проекта. Изменять имя директории нельзя.
5. Измените файл .htaccess что бы его содержимое напоминало следующее:
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index\.php|img|css|public|tmp|download|javascript|rte|document|xajax_js|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
6. Поменяйте кодировку на нужную (например: cp1251). В файле xajax.php найдите строчку (она в начале) и внесите изменения:
if (!defined ('XAJAX_DEFAULT_CHAR_ENCODING')) define ('XAJAX_DEFAULT_CHAR_ENCODING', 'utf-8');
7. Если вам нужен тест для проверки работоспособности, то создайте контроллер testxajax и запишите в него следующий код:
<?php
class Testxajax extends Controller
{
function Testxajax()
{
parent::controller();
$this->load->library('xajax');
$this->xajax->registerFunction(array('test_function',&$this,'test_function'));
$this->xajax->processRequest();
}
function test_function($number)
{
$objResponse = new xajaxResponse();
$objResponse->Assign("SomeElementId","innerHTML", "Ура, Xajax работает! Результат сложения: ".($number+3));
return $objResponse;
}
function index()
{
$template['xajax_js'] = $this->xajax->getJavascript( base_url()."js/" ); // укажите вашу папку с файлами javascript
$template['content'] = '<div id="SomeElementId"></div><input type="button" value="test" onclick="xajax_test_function(2);">';
$this->load->view('template/index', $template);
}
}
?>
8. Создайте в директории application/views/template/ файл index.php:
<html>
<head>
<title>Xajax ТЕСТ</title>
<?=$xajax_js?>
</head>
<body>
<h1><?=$content?></h1>
</body>
</html>
Ну вот и всё, успехов!