(Android dev新手)你好。主要是我添加新功能的原因是为了在数据库中检索更多限制。因为我有两个Android应用程序,组织者和播放器,但使用相同的数据库以及php文件。
首先让我向您展示控制器
中玩家的功能function laroforpi(){ //players listing of games
if(!$this->session->userdata('is_logged_in')){
redirect('login');
}
$this->load->model('games_model');
$data = $this->games_model->laroforpi();
echo json_encode($data)
}
和模型
function laroforpi(){
if($this->input->post('brunning') == "true"){
$this->db->where('user_id', $this->input->post('user_id'));
$query = $this->db->get('game');//select * from game
$data = $query->result_array();
return $data;
}
else{
$date = date('Y-m-d');
$data = array(
'status' = 'Publish',
'startdate <=' => $date,
'enddate >= ' => $date
);
$this->db->select('*');
$this->db->from('game');
$this->db->where($data);
$result = $this->db->get();
$row = $result->result();
return $row;
}
}
此处还有抓取(?)
的代码public static void getGameForPlayers(final Context context, final boolean brunning, final RequestCallback<JSONArray> callback){
Map<String, String> params = new HashMap<>();
params.put("user_id", user_id);
params.put("brunning",/* brunning == true? "true" : "false" */ "false");
new PostRequest("getgameforplayers", params, new RequestCallback<JSONArray>() {
@Override
public void onSuccess(JSONArray response) {
callback.onSuccess(response);
}
@Override
public void onFailed(String message) {
callback.onFailed("Error encountered. " + (message != null ? message : "") + "Please try again!" );
}
}).execute();
}
每次运行时,都会返回消息“遇到错误”,因此很可能是错误发生的地方
现在组织者(控制器)的功能
function getgame()//organizer list of games
{
if(!$this->session->userdata('is_logged_in')){
redirect('login');
}
$this->load->model('games_model');
$data = $this->games_model->getgame();
echo json_encode( $data );
}
现在为模型
function getgame()
{
if($this->input->post('brunning') == "false"){
$this->db->where('user_id', $this->input->post('user_id'));
$query = $this->db->get('game');
$data = $query->result_array();
return $data;
}
else{
$date = date('Y-m-d');
$data = $this->db->query("SELECT * FROM game where user_id = ".$this->input->post('user_id')." and ".
"((startdate <= '".$date."' and '".$date."' <= enddate));");
return $data->result_array();
}
}
通常我可以运行组织者应用程序但是这两个新函数应该在注释中,否则它将无法获取所需的数据。 玩家应用程序也是如此,当使用两个新功能时,它仍然无法检索数据。已经好几天了,我还没有找到任何答案。