我真的需要一些帮助 . 我正在使用 phonegap/cordova 和使用 codeigniter 的webservice开发移动应用程序 . 这个应用程序有注册功能,这意味着应用程序将数据通过 Ajax 发送到 codeigniter 控制器,然后将其保存到数据库中 . 实际上它在localhost中正常工作 . 但在我将所有 codeigniter 文件传输到实时服务器后, ajax 返回错误 . 我已经在codeigniter中设置了config,database,base_url . 有人知道这是什么问题吗?
这是ajax代码
var base_url = "http://bizprohandler.com/token/";
var reg = {"name": name, "email": email, "country": country, "mobile_number": mobile_number, "bitcoin_id": bitcoin_id, "user_id": user_id, "password": password};
$.ajax({
type : "POST",
url : base_url+'index.php/webservices/register',
data : reg,
dataType : 'json',
timeout : 2000,
success: function(e){
if(e.status == 0){
$.mobile.changePage("#login",{reverse:false,transition:"slide"});
alert(e.message);
}
},
error: function(e){
alert('error');
}
});
这是codeigniter控制器
public function register()
{
$json = "";
$result_array = array();
$json = file_get_contents('php://input');
$data = json_decode($json, true); //decode into array.\
$name = $data['name'];
$email = $data['email'];
$country = $data['country'];
$mobile_number = $data['mobile_number'];
$bitcoin_id = $data['bitcoin_id'];
$user_id = $data['user_id'];
$password = md5($data['password']);
$this->user_model->insert_user($name,$email,$country,$mobile_number,$bitcoin_id,$user_id,$password);
$result_array['status'] = 0;
$result_array['message'] = 'Successfully registered';
$rep = json_encode($result_array);
echo $rep;
exit;
}
1 回答
这可能不是它失败原因的答案,但它可以帮助您查看返回的错误 . 我建议的
register()
代码更多是CodeIgniter-ish .正如代码注释所述,您可能需要修改
user_model->insert_user()
. 由于您没有共享该代码,因此不知道那里发生了什么 . 除非您对刀片有特殊要求,否则可以直接插入:$this->db->insert('yourTable', $data);
修改了以下AJAX代码,以便
error: function...
将提醒有用的故障排除信息 .