Моя цель — добавить содержимое локальной базы данных в удаленную базу данных.
Я добавляю содержимое базы данных как пользовательский объект в JSONArray.
Я преобразовываю этот JSONArray как строку и передаю эту строку как параметр POST на страницу php, но я не могу написать код php для хранения этого содержимого в базе данных на стороне сервера.
Пожалуйста, помогите мне написать код PHP
Получение данных из базы данных и сохранение в JSONArray
DataEntry d=new DataEntry(context);
JSONArray call_records=d.get();
String update_content=call_records.toString();
success= new GetUpdateStatus().execute(update_content).get();
метод get () класса DataEntry
public JSONArray get() throws JSONException
{
JSONArray CallList = new JSONArray();
String selectQuery = "SELECT * FROM " + DATABASE_TABLE +";";
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
if (cursor.moveToFirst()) {
do {
CallRecord record = new CallRecord();
record.setId(cursor.getInt(0));
record.setCaller(cursor.getString(1));
record.setReciever(cursor.getString(2));
record.setMapUrl(cursor.getString(3));
record.setTimeStamp(String.valueOf((cursor.getType(4))));CallList.put(record.getJSONObject());
} while (cursor.moveToNext());
}
return CallList;
}
Класс CallRecord:
public class CallRecord {
//private variables
int _id;
String _caller;
String _reciever;
String _map;
String _ts;
//This class has set and get methods for each variable.
}
Код парсера JSON:
protected Integer doInBackground(String... a) {
int success=0;
try {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("add",a[0]));
JSONObject json = jsonParser.makeHttpRequest(
url_update, "POST", params);
и это:
if(method == "POST"){
// request method is POST
// defaultHttpClient
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(params));
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
Вы пытались получить необработанные данные POST.
$post = file_get_contents('php://input');
используя это, вы получите все данные в виде массива в переменной $ data.
$ data = json_decode (file_get_contents (‘php: // input’), true);