gpt4 book ai didi

php - 如何将从 MySQL 检索到的数据插入到 Android 应用程序中的数组中?

转载 作者:行者123 更新时间:2023-11-29 03:22:58 24 4
gpt4 key购买 nike

我正在尝试从我的数据库中检索数据,我写了这段代码

<?php
require "conn.php";

$mysql_qry = "select * from domande";
$res = mysqli_query($conn,$mysql_qry);
$result = array();

while($row = mysqli_fetch_array($res)){
array_push($result,
array('id_domanda'=>$row[0],
'domanda'=>$row[1],
'username'=>$row[2]
));
}

echo json_encode(array("result"=>$result));

mysqli_close($conn);

?>

它应该返回一个数组。我已经能够以这种方式在警告对话框中显示数组:

class BackgroundWorkerDomande extends AsyncTask<String,Void,String> {

Context context;
AlertDialog alertDialog;
BackgroundWorkerDomande (Context ctx){
context = ctx;
}
@Override
protected String doInBackground(String... params) {
String type = params[0];


if (type=="getquestion"){
try {


URL url = new URL(params[3]);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);


InputStream inputStream = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "iso-8859-1"));
String result = "";
String line = "";
while ((line = bufferedReader.readLine()) != null) {
result += line;
}
bufferedReader.close();
inputStream.close();
httpURLConnection.disconnect();
return result;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}



return null;
}

@Override
protected void onPreExecute() {


alertDialog = new AlertDialog.Builder(context).create();
alertDialog.setTitle("Status");
}

@Override
protected void onPostExecute(String result) {
alertDialog.setMessage(result);
alertDialog.show();



}

@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
}

但是如果我想将结果插入到在我的 MainActivity 中声明的新数组中,我应该怎么做?我只是按照互联网上的一些教程编写了这段代码,所以我并不完全了解它是如何工作的。 (抱歉我的英语不好)

最佳答案

因为您发布了您的工作代码但没有指定确切的问题,所以很难确切地知道您想要什么。特别是,“将结果插入新数组”是什么意思?从表面上看,我看到了这一点:

ArrayList<String> results;
results.add (result);

但是,我会提出一个建议:在您的 php 代码中,您可以将其分成多个字段并将其作为数组发布,而不是将整个结果作为一个字符串发布吗?然后,在接收端,如果您想使用各个字段值,则不必从 result 中解析它们。

关于php - 如何将从 MySQL 检索到的数据插入到 Android 应用程序中的数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40900072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com