farklı ip adresine veri göndererek, insert ya da update işlemlerini yapabilirsin. aynı şuanda yaptığın select'li sorgu gibi yapabilirsin bunu. Verileri gönderirken istersen hepsini ayrı gönder, istersen android'te json oluştur json'ı gönder webservis tarafında parçala bu tamamen sana kalmış bir durum. Örnek kod olarak.
public class DBVariable {
private String _key;
private String _value;
public DBVariable(String key, String value)
{
this._key = key;
this._value = value;
}
public String GetKey()
{
return this._key;
}
public String GetValue()
{
return this._value;
}
}
public class WebService extends AsyncTask<DBVariable, Void, String> {
@Override
protected String doInBackground(DBVariable... params) {
String link = Options.link + params[0].GetValue();
try
{
String data = "";
for(int i = 1, limit = params.length; i < limit; i++) {
if(i != 1)
data += "&";
data += URLEncoder.encode(params[i].GetKey(), "UTF-8") + "=" + URLEncoder.encode(params[i].GetValue(), "UTF-8");
}
URL url = new URL(link);
URLConnection conn = url.openConnection();
if(params.length > 1) {
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data);
wr.flush();
}
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null)
{
sb.append(line);
break;
}
return sb.toString();
} catch(Exception e)
{
Log.e("error", e.toString());
return "-1";
}
}
}
bu webservis classını selectli sorgunda da, insert update li sorgunda da kullanabilirsin. DBVariable ile key dediğim gönderdiğim alan => php'de ona göre acıyorum. value dediğim ise içindeki değer. Bu webservisi şu şekilde çağırıyorum. Asenkron class'a gönderdiğin ilk parametre ip adresi php dosyasının adı olmalı. http ile başlamalı.
public void MethodName(String orderID, String image)
{
DBVariable db1 = new DBVariable("link", "ip adresi ve php dosyanın adı");
DBVariable db2 = new DBVariable("orderid", orderID);
DBVariable db3 = new DBVariable("image", image);
try
{
new WebService().execute(db1, db2, db3).get();
}
catch (Exception e)
{
}
}
Php' de iyi değilim ama bu kod insert eder. Ve sen de android uygulamasından bir php'ye veri göndererek o da veritabanına kaydederek sorununu çözmüş olursun. PHP de böyle olmalı
<?php
error_reporting(0);
include "include.php";
$orderID = $_REQUEST['orderid'];
$image = $_REQUEST['image'];
if($baglanti)
{
$query = "INSERT INTO images (order_id, path)
VALUES ('{$orderID}', '{$image}')";
$rs=odbc_exec($baglanti,$query);
if (!$rs)
{
exit("Error in SQL");
}
} else echo "sa";
?>