codeigniter: файл php не найден при запросе от вызова ajax - PullRequest
1 голос
/ 24 июня 2011

У меня есть раскрывающийся список стран, который находится внутри папки соискателей. То, что я пытаюсь сделать, это получить список учреждений из соответствующей страны, используя этот скрипт.

Существует файл с именем getData.php, который выбирает учреждения и показывает его в другом окне выбора.

Код работает нормально, только путь этого php-файла не найден в запросе ajax.

Я сохранил этот файл внутри views / Applicants / getData.php и controller / Applicants / getData.php, но он не работает.

Мой URL выглядит так при просмотре страницы http://localhost/event_final/applicants/register/8

function showAssociation(str)
{

if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("actData")[removed]=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","<?php echo base_url() ?>applicants/getData.php?q="+str,true);
xmlhttp.send();

Можете ли вы указать мне, куда мне нужно переместить этот php-файл, или мне нужно указать абсолютный URL-адрес.

Спасибо

1 Ответ

0 голосов
/ 24 июня 2011

Вы не можете получить прямой доступ к любым файлам напрямую по URL в Codeigniter, вам нужно пройти через контроллер.

Просто создайте метод контроллера, который загружает представление или выводит данные из модели, иполучить к нему доступ site_url('controller_name/method_name') или другими способами.

То, как вы описываете это, просто выбирая некоторые данные, возможно, они принадлежат модели (но вам все равно понадобится метод контроллера для вывода данных по запросу http).Еще раз прочитайте руководство пользователя и посмотрите, нужно ли вам разделить слои Model View и Controller немного подробнее.

Также неправильно использовать расширение .php в вашемURL, если вы не установили его как $config['url_suffix'], что, вероятно, не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...