Java 通过截击android将数组发送到php

Java 通过截击android将数组发送到php,java,android,json,Java,Android,Json,我正在尝试编写一个小代码,通过截取android将数组从我的android应用程序发送到php文件a,该文件将在文本文件中写入数组。这里是我的数组 >String[] title = { "Abundance", "Anxiety", "Bruxism", "Di

我正在尝试编写一个小代码,通过截取android将数组从我的android应用程序发送到php文件a,该文件将在文本文件中写入数组。这里是我的数组

>String[] title = {
                    "Abundance",
                    "Anxiety",
                    "Bruxism",
                    "Discipline",
                    "Drug Addiction"
            };
我的截击密码:

>UploadRequest registerRequest = new UploadRequest(title, responseListener);
            RequestQueue volleyQueue = Volley.newRequestQueue(MainActivity.this);
            DiskBasedCache cache = new DiskBasedCache(getCacheDir(), 64 * 2048 * 2048);
            volleyQueue = new RequestQueue(cache, new BasicNetwork(new HurlStack()));
            volleyQueue.start();
            volleyQueue.add(registerRequest);

我的stringRequest类UploadRequest.java

公共类UploadRequest扩展了StringRequest{
专用静态最终字符串寄存器\u请求\u URL=”http://192.168.2.115/app/Register.php";
私有映射参数;
公共上传请求(字符串[]名称,Response.Listener){
super(Method.POST,REGISTER\u REQUEST\u URL,listener,null);
params=新的HashMap();
params.put(“names”,String.valueOf(names));//我想我的问题在这里!
}
@凌驾
公共映射getParams(){
返回参数;
}
}

我的Register.php文件

$value=$_POST['names']

$fp=fopen('Log.txt','w')

fwrite($fp,$value)

fclose($fp)

来自数组的文本文件“Log.txt”中php文件的输出

[Ljava.lang.String;@41c509a8

所以我的问题是数组出错了,或者我没有声明数组!所以请告诉我如何声明它


感谢所有您需要发送的数组值,而不是参考哈希代码,因此请使用
数组。toString

 params.put("names", Arrays.toString(names));
    JSONArray array = new JSONArray();
    array.put("Abundance");
    array.put("Anxiety");
    array.put("Bruxism");
    System.out.println(array.toString());

输出:

[Abundance, Anxiety, Bruxism, Discipline, Drug Addiction]
[Ljava.lang.String;@14eac69
备选案文2

您可以创建
JSONARRAY
并将值放入
JSONARRAY
中,然后使用
JSONARRAY.toString()

输出:

["Abundance","Anxiety","Bruxism"]
确实如此。最好尝试以下方法:

params.put("names[0]", names[0]);
params.put("names[1]", names[1]);
params.put("names[2]", names[2]);
.... of course you would make a loop for it
或:


您的php脚本在这两种情况下会有所不同。

@Steve.r我很高兴,我可以帮助您,很高兴编码:)现在我正在尝试获取这个数组[“丰富”、“焦虑”、“磨牙症”]在php上,一行一行地插入mysql,看起来有点难。@Steve.r阅读本文,我确信我已经接受了,再次感谢,希望找到php解决方案。
["Abundance","Anxiety","Bruxism"]
params.put("names", String.valueOf(names));//i think my problem is here!
params.put("names[0]", names[0]);
params.put("names[1]", names[1]);
params.put("names[2]", names[2]);
.... of course you would make a loop for it
params.put("names0", names[0]);
params.put("names1", names[1]);
params.put("names2", names[2]);
......