目前,我正在通过外部URL检索数据,该URL使用PHP脚本并返回JSON值。工作很好。
但如何发送用于查询的字符串,以便在PHP脚本中执行以下操作:
$name = $_POST['name']; //this was sent from the Android app. How do I send this from the app.
$sql = "SELECT name FROM tablename WHERE category = '$name'";
$result = mysqli_query($con, $sql) or die("Error in Selecting");
注意:我不想使用凌空抽射。
我的AsyncTask扩展类,它当前不向URL发送任何值。
class BackgroundTask extends AsyncTask<Void,Void,String> {
final String jsonUrl = "http://example.com/getdata.php";
@Override
protected String doInBackground(Void... params) {
try {
URL url = new URL(jsonUrl);
HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
InputStream in = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));
StringBuilder stringBuilder = new StringBuilder();
while ((jsonString = bufferedReader.readLine()) != null){
stringBuilder.append(jsonString+"\n");
}
bufferedReader.close();
in.close();
httpURLConnection.disconnect();
return stringBuilder.toString().trim();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
products = new ArrayList<>();
try {
jsonObject = new JSONObject(s);
String category = jsonObject.getString("viewProduct");
JSONArray jsonArray = new JSONArray(category);
for(int x=0; x < jsonArray.length(); x++){
JSONObject jsonPart = jsonArray.getJSONObject(x);
products.add(jsonPart.getString("name"));
}
adapter = new ArrayAdapter<>(MainActivity.this, android.R.layout.simple_list_item_1, android.R.id.text1, products);
productListView.setAdapter(adapter);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
如果您只是在讨论将数据作为POST请求的主体发送,那么可以使用如下方法:
HttpURLConnection conn= (HttpURLConnection) url.openConnection();
conn.setDoOutput( true );
conn.setRequestMethod( "POST" );
conn.setRequestProperty( "Content-Length", Integer.toString( postDataLength ));
try {
DataOutputStream wr = new DataOutputStream( conn.getOutputStream());
wr.write( postData );
} catch (IOException ex) {}
问题内容: 我正在构建Android应用程序的项目的C 方面。我需要一些信息(通过字符串和字符串数组)传递给Java应用程序(通过JNI)。我以前从未做过,相反方向的人没有C 的经验,并承认他们不能真正提供帮助。 我确实找到了以下代码(从这里开始) 但这对我来说毫无意义。通常,我不确定如何将其合并到程序的C ++端,而且我无法确切了解其工作原理。代码是否在执行该行时发出消息?还是在for循环中执行
问题内容: -– -–解决方案— -– 问题在我们的服务器上。如果将www放在域名前面,它只能处理发帖请求。这就是造成问题的原因。我将第一个答案设置为THE答案,因为一旦我整理出网址,它便会起作用。 原始问题 我的PHP脚本中有一个POST变量,始终为空。 我试图更改变量的名称,变量的内容等。 问题必须存在于Java代码中,因为当我在php中请求时,它为null。 这是我的情况: 我让用户拍摄照片
我试图通过post发布到Web Api值控制器: 但该值始终为null。 我正在使用Postman在body中发布这个:设置为Json(应用程序/json)
我有一个exe文件,可以像这样从cmd运行: 我想从java发送这个命令。我知道我可以这样使用ProcessBuilder: 但我不知道如何通过管道将字符串文本发送到此命令。如果可能的话,我更喜欢不创建文本.txt文件的解决方案。
问题内容: 我有两个脚本,Server.py和Client.py。我有两个目标: 为了能够一次又一次地从客户端向服务器发送数据。 为了能够将数据从服务器发送到客户端。 这是我的Server.py: 这是我的客户: 该函数首次运行(“ e”进入服务器,我返回返回消息),但是如何使它一遍又一遍地发生(类似于聊天应用程序)?该问题在第一次之后开始。消息不会在第一次之后发送。我究竟做错了什么?我是pyth
问题内容: 我是Android应用程序开发的新手。请找到我的AsyncTask代码,用于在用户单击按钮时连接URL。 请参阅我的MainActivity方法: 在这里,我遇到了一个错误。我不知道我的代码有什么问题。谁能帮帮我吗 ? 问题答案: 错了 您不应创建活动类的实例。 活动由开始。 您可以将asynctask设为活动类的内部类,并在其中更新ui 或使用界面 如何从AsyncTask返回布尔值