2 zansoszan zansoszan 于 2013.07.24 16:27 提问

ajax phonegap 和 RESTful Codeigniter 问题

大家好 我现在准备用phonegap做一个安卓的app 现在需要做一个登录界面 有用户名密码 和提交按钮 当点击提交按钮 用ajax发送数据给 后台服务器 然后服务器返回true或者是false 如果是true跳入另外一个界面 如果是 false 弹出对话框提醒 现在问题是点击提交的时候一直显示ajax的error里面的 failed login。我觉得应该是url的问题 可是找了很久也不知道如何改:

ajax代码:
<

script type="text/javascript">

           $(document).ready(function()
             {
                $('#submit').click(function()
                {

                //Get data-theme data from all fields
                var username = $('#username').val();
                var password = $('#password').val();


                //Username and password can not be empty
                if(username =='')
                {

                    alert('Please enter your username!');

                    return false;
                }
                if(password =='')
                {
                    alert('Please enter your password!');

                    return false;
                }

                var form_data = 
                {
                    'username': username,
                    'password': password
                };

                //ajax code start here
                $.ajax
              ({
                    url: 'http://localhost/restserver/index.php/api/apiauth/auth',
                    <!--//for test need to consolehange IP address here-->
                    data: form_data, 
                    type: 'POST',
                    cache: false,    
                    dataType: "json",
                    error: function(XMLHttpRequest, textStatus, errorThrown)
                    {
                        alert('Failed to login');
                        console.log(JSON.stringify(XMLHttpRequest));
                        console.log(JSON.stringify(textStatus));
                        console.log(JSON.stringify(errorThrown));
                    },
                    success: function (data)
                {
                    alert("Success login");    
                    //$.mobile.changePage("index.html", "slideup");
                }

             });
                      return false;   
            });

         });
             </script>

html部分:

                <div>
                    <label for="username">Username</label>
                        <input name="username" type="text" id="username" placeholder="Username"/>
                </div>

                <div>
                    <label for="password">password</label>
                        <input name="password" type="password" id="password" placeholder="Password"/>
                </div>

                <fieldset>
                    <div><button name="submit" type="button" data-theme="b" id="submit">Login</button>
                    </div>
                </fieldset>
            </div>

后台RESTful CI:

<?php defined('BASEPATH') OR exit('No direct script access allowed');

require APPPATH.'/libraries/REST_Controller.php';

class Apiauth extends REST_Controller
{
   function auth_get()
   {
      $this->load->model('membership_model');

      $query=$this->membership_model->validate();

      $this->response($query,200);

    }
}

<?php

class Membership_model extends CI_Model
{
    function validate()
    {
        $this->db->where('username',$this->input->post('username'));
        $this->db->where('password',$this->input->post('username'));

        $query=$this->db->get('membership');

        if($query->num_rows=1)
        {
            return true;
        }

        else
        {
            return false;
        }
    }
}
Csdn user default icon
上传中...
上传图片
插入图片