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