gpt4 book ai didi

php - 将数据从android发布到PHP

转载 作者:行者123 更新时间:2023-11-29 01:58:06 25 4
gpt4 key购买 nike

我已经使用这个论坛很长时间了,首先,我想说谢谢你的帮助我很多次。这是我第一次找不到答案,这让我很疯狂......

我正在尝试编写一个 super 简单的应用程序,它从数据库获取数据/将数据发布到数据库中。问题是,我无法发布数据(get 没问题)。我正在使用一个 php 文件,它应该从 Android 设备获取数据,并将其发送到数据库。首先,我无法将其发布到我的 php 文件中。我已经尝试了所有(我知道的)。

PHP 文件-

$test=$_POST['v']; print $_POST['v']; 

Java 文件-

public void postData() 抛出 ClientProtocolException, IOException {

    // Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost post = new HttpPost("https://www.myweb.coom/test.php");

try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("v", "123"));
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));

// Execute HTTP Post Request
httpclient.execute(post);

} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
}

当我输入 Log.* 时,它告诉我一切正常。 PHP 似乎没有获取任何数据...

编辑异步任务-----公共(public)类上传扩展 AsyncTask{

@Override
protected String doInBackground(String... params) {
try {
JSONObject json = new JSONObject();
json.put("UserName", "test2");
json.put("FullName", "1234567");
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,
10000);
HttpConnectionParams.setSoTimeout(httpParams, 10000);
HttpClient client = new DefaultHttpClient(httpParams);
//

String url = "http://my WAMP server/test.php"+
"json={\"UserName\":1,\"FullName\":2}";

HttpPost request = new HttpPost(url);
request.setEntity(new ByteArrayEntity(json.toString().getBytes(
"UTF8")));
request.setHeader("json", json.toString());
HttpResponse response = client.execute(request);
HttpEntity entity = response.getEntity();
// If the response does not enclose an entity, there is no need
if (entity != null) {
InputStream instream = entity.getContent();

String result = "gr8 Success";
Log.i("Read from server", result);

}
} catch (Throwable t) {
Log.e("Request failed: " ,"ERR"+ t.toString());
}

}

MainActivity-

public void postData(View v) { //starts on button click

if(upload!=null){
if(upload.getStatus()!= AsyncTask.Status.FINISHED){
Log.d("postData","no need to start AsyncTask");
return;
}

}
upload= new Upload();
upload.execute();
Log.i("Async", "Starting...");

}

PHP- $json=$_GET ['json']; $obj = json_decode($json);

               $posts = array(1);
header('Content-type: application/json');
echo json_encode(array('posts'=>$posts));

最佳答案

您的 URL 域包含 2 个“o”。你应该写 https://www.myweb.com/test.php , 不是 https://www.myweb.coom/test.php

关于php - 将数据从android发布到PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14060207/

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