dqve65954 2017-03-15 20:32
浏览 32
已采纳

使用MySQL和PHP注册活动

I'm trying to create a Register Activity for my app. I'm using this code:

@Override
    protected String doInBackground(String... params) {
        String nome = params[0];
        String email = params[1];
        String pwd = params[2];
        String data="";
        int tmp;

        try {
            URL url = new URL("http://6senseofficial.it/api/login/register.php?");
            String urlParams = "nome=" + nome + "&email=" + email + "&pwd=" + pwd;

            HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
            httpURLConnection.setDoOutput(true);
            OutputStream os = httpURLConnection.getOutputStream();
            os.write(urlParams.getBytes());
            os.flush();
            os.close();
            InputStream is = httpURLConnection.getInputStream();
            while ((tmp = is.read()) != -1) {
                data += (char) tmp;
            }
            is.close();
            httpURLConnection.disconnect();

            return data;
        } catch (MalformedURLException e) {
            e.printStackTrace();
            return "Exception 1: "+e.getMessage();
        } catch (IOException e) {
            e.printStackTrace();
            return "Exception 2: "+e.getMessage();
        }
    }

Whenever i control the new camps on my DB, all the params are empty. Some know why? Thanks.

The code for PHP file register is this:

<?php include('../../mysql.php'); ?>
<?php
error_reporting(0);

$nome = $_GET['nome'];
$email = $_GET['email'];
$pwd = $_GET['pwd'];

$data = date('Y-m-d H:i:s');
$sql = "INSERT INTO utenti (nome, email, pwd, datacreazione) VALUES ('$nome','$email','$pwd','$data')";
if(!mysqli_query($link, $sql)){
    echo '{"message":"Unable to save the data to the database."}';
}

?>
  • 写回答

1条回答 默认 最新

  • douhan9467 2017-03-15 21:48
    关注

    If you are sending GET requests, you should append query string to URL, not to body.

    Proper code should be:

    String urlParams = "nome=" + nome + "&email=" + email + "&pwd=" + pwd;
    URL url = new URL("http://6senseofficial.it/api/login/register.php?" + urlParams);
    

    And remove lines with OutputStream.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)