Я разрабатываю сайт на фреймворке Kohana. У меня есть код, который будет повторяться. Код на JS и PHP. Я решил создать класс и поместить туда этот код. И потом вызывать его в тех местах, где он нужен.
Вот код на JavaScript:
public static function tags() { ?>
$('.input-tags-wrap input').autocomplete({
source: function (request, response) {
$.ajax({
url: "/application/classes/CommonFunctions/autocompletetag",
dataType: "json",
data:
{
maxRows: 12,
startsWith: request.term
},
success: function (data) {
response($.map(data.message.data, function (item) {
return {
label: item.name,
value: item.name
};
}));
},
error: function (data) {
$('html').html(data.responseText);
}
});
},
minLength: 1,
delay: 50
});
Вот код на php (это та функция, куда обращается код на JavaScript:
function autocompletetag() {
if (!$_GET['startsWith'] OR ! Request::initial()->is_ajax())
return $this->render_ajax('Invalid request', false);
$query = 'SELECT `name`, `is_show`
FROM `tags`
WHERE is_show = 1 AND name LIKE "%' . $_GET['startsWith'] . '%" and id != 54 LIMIT 0, ' . $_GET['maxRows'];
$result = DB::query(Database::SELECT, $query)
->execute()
->as_array();
$this->render_ajax(array('data' => $result));
}
Код я вызываю вот так:
<?php echo CommonFunctions::tags(); ?>
Когда я начинаю что-то вводить в мое поле с autocomplete, у меня появляется ошибка:
Access forbidden!
You don't have permission to access the requested object. It is either read-protected or not readable by the server.
If you think this is a server error, please contact the webmaster.
Error 403
Подскажите, пожалуйста, почему так происходит. И как мне обойти эту ошибку?