简单的游戏服务器使用Post命令

时间:2011-06-19 21:25:32

标签: php android

我正在尝试使用带有mysql数据库的php为Android游戏编写一个简单的游戏服务器。

我的想法是让'droid应用程序模拟一个简单的http post请求 例如http://www.mysite.com/missile/new.php?lat=58123456,long=-2123456,state=1

我的网络服务器旨在将新导弹存储为从那些E6合作伙伴在mysql数据库中启动,然后我打算编写另一个php文件,以允许所有客户在飞行中进行peridoically检查导弹。

我已经尝试了我发现的各种代码,但没有取得100%的成功。

如果我在浏览器栏中输入http://www.mysite.com/missile/new.php?lat=58123456,long=-2123456,state=1,我就会回来 数组([launchlat] => 56123456,launchlong = 2700123,state = 0)因为我只是在做一个简单的

print_r($_GET);
echo '<br />';

在我的php文件中。

但是使用我当前的代码

           try {
                    String reply;
            HttpClient client = new DefaultHttpClient();  
            String postURL = "http://www.mysite.com/missile/new.php";
            HttpPost post = new HttpPost(postURL); 
                List<NameValuePair> params = new ArrayList<NameValuePair>();
                params.add(new BasicNameValuePair("launchlat", "56123456"));
                params.add(new BasicNameValuePair("launchlong", "2700123"));
                params.add(new BasicNameValuePair("state", "0"));
                UrlEncodedFormEntity ent = new UrlEncodedFormEntity(params,HTTP.UTF_8);
                post.setEntity(ent);
                HttpResponse responsePOST = client.execute(post);  
                HttpEntity resEntity = responsePOST.getEntity();  
                if (resEntity != null) {    
                    reply = EntityUtils.toString(resEntity);
                    Log.i("RESPONSE",reply);
                }
        } catch (Exception e) {
            e.printStackTrace();
        }

我正在回复一个空数组。

有人可以建议进行调整(或者使用全新的代码来发帖并收到回复吗?

问候

西蒙

1 个答案:

答案 0 :(得分:4)

我对android dev一无所知,但看起来你正在使用HttpPost,但你的php期待GET

更改您的php以查看$_POST而不是$_GET 如果您需要使用GET和POST $_REQUEST