【发布时间】:2011-09-24 13:45:25
【问题描述】:
所以我在使用 phonegap 方面做得越来越好,但我仍在尝试完全添加 codeigniter 作为后端。我已经能够在 jquery 中加载从我的 CI 控制器到我的 phonegap android 应用程序的东西,但似乎无法正确地向服务器提交任何东西。您是否需要一个休息服务器来从 phonegap 与 CI 通信?我正计划使用 ajax post 向 CI 发送信息,但到目前为止无法使其正常工作。我真的很感激有人可以帮助我克服这个障碍。谢谢
控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index()
{
//$this->load->view('welcome_message');
$data['query']=$this->site_model->get_last_ten_articles();
$this->load->view('partial1',$data);
}
public function addarticle(){
$headline=$this->input->post('headline');
$article=$this->input->post('article');
$this->site_model->insert_entry($headline,$article);
}
}
Javascript(在 phonegap 设备上)
function add_article(){
$.ajax({
type: 'POST',
url: 'http://testlab.site40.net/droiddev/welcome/addarticle/',
data: {"headline": "test headline","article": "test article"}
error: function(){alert('fail');},
success: function(data){
alert('article added');
},
dataType: "json"
});
}
【问题讨论】:
-
显示您编写的未与 codeigniter 后端成功通信的代码。这是在模拟器中还是在设备上?
-
将分析器添加到您的
add_article类:$this->output->enable_profiler(TRUE);它将输出捕获的所有数据(POST 等;)可能只是您打错了一些东西,但分析器是您的朋友! -
@Jakub 感谢分析器提示!完全忘记了。很有用:)
-
@CI_Guy 我也在尝试做同样的事情,你是如何将 CI 与 phonegap 集成的?这是一个很晚的问题,但你还能帮忙吗?你不能在你的ajax调用中做“base_url”吗?
标签: jquery ajax json codeigniter cordova