【问题标题】:Ajax request from controller in codeigniter来自codeigniter中控制器的Ajax请求
【发布时间】:2013-04-23 00:42:04
【问题描述】:

我正在尝试使用 ajax 从服务器获取数据并将其存储在 cookie 中。下面的代码是在 coodeigniter 中构建的,来自控制器。

          $email = $this->input->post('username');
          $pword = $this->input->post('password');
          <script type="text/javascript">
           $.ajax({
            type: 'GET',
            url: "http://localhost/projects/comp6300Server/index.php/rest/resources/token/username/" + $email + "/password/" + $pword + "/institution/" + inst,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function ($token)
            {
              $this->load->helper('cookie');
              $cookie = = array(
                'name'   => $email,
                'value'  => $token.value()
              );
              $this->input->set_cookie($cookie);
            },
            error: function (xhr, ajaxOptions, thrownError)
            {
              alert(thrownError);
            }
           });
          </script>

服务器的实际返回应该是一个如下所示的 xml 文件,我想将返回的数字存储为 cookie 的值。

 <xml>
  <item>209273</item>
 </xml>

我认为我的问题是我不能将 jquery 代码直接放在 php 控制器中。但是,我不知道如何在没有 jquery 的情况下执行 ajax 请求。谁能帮帮我?

【问题讨论】:

  • 第一个问题是您的请求在服务器发送 xml 时需要 json
  • 在这个例子中你完全将 Javascript 和 PHP 混合在一起,这是非常非常损坏...

标签: jquery ajax codeigniter rest


【解决方案1】:

首先你需要 JSON,你需要把它改成 xml

 dataType: "xml"

其次,您将 JavaScript 与 PHP 混合使用,您的方法不正确。

【讨论】:

    猜你喜欢
    • 2013-11-29
    • 1970-01-01
    • 2016-09-10
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多