Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
#1

Передача значения переменой на сервер - Программирование Android

08.11.2015, 18:09. Просмотров 340. Ответов 13
Метки нет (Все метки)

Здраствуйте!
Например есть у меня переменная, а её значение надо передать на сервер. Как это реализовать?

Добавлено через 3 часа 9 минут
Ребят, помогите
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2015, 18:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Передача значения переменой на сервер (Программирование Android):

Передача изображения на сервер - Программирование Android
Здравствуйте уважаемые форумчане. Я все пытаюсь передать изображение на сервер, но никак не могу разобраться, что происходит, вот мой код: ...

Передача фото по сети на сервер - Программирование Android
У меня такая задача : нужно реализовать такое приложение чтобы водитель мог сфотографировать на улице обьект здание и тп и фото этого...

Передача HTML как строки из Андроида на сервер - Программирование Android
Приложение андроида принимает html-строку, которую надо передать на сервер для парсинга. Собственно алгоритм приема html и его передачи...

Передача значения из SPiner - Программирование Android
В диалоге происходит выбор названия таблицы в Spiner списке. По нажатию кнопки OK это значени должно присвоитсья переменной из другого...

Передача значения в Список из диалога - Программирование Android
для создания нового пункта в списке вызывается диалог в котором пользователю предлагается ввести его имя. Диалог создаётся из другого...

Передача значения из одного класса в другой - Программирование Android
Доброго времени суток! Проблема следующая: В MainActivity моего проекта лежит список, мне нужно передать идентификатор нажатого элемента...

13
YuraAAA
1578 / 1319 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
08.11.2015, 18:28 #2
den_droid, Apache http client, HttpUrlConnection итд. С помощью GET/POST/PUT запроса
0
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
08.11.2015, 20:43  [ТС] #3
YuraAAA, можете привести самый простой пример? Пожалуйста...
0
MisterMr
1 / 1 / 0
Регистрация: 07.04.2015
Сообщений: 41
09.11.2015, 10:09 #4
Java
1
2
3
4
5
String s = "http://yourdomen.blablabla/api/functionname?knowledge=false"
HttpClient HttpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(s);
 
String data = httpClient.execute(httpGet, new BasicResponceHandler());
Должно работать
0
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
09.11.2015, 18:00  [ТС] #5
Просто хочу список лучших игроков сделать)
Помогите, пожалуйста
0
Rainmaker93
3 / 3 / 1
Регистрация: 12.09.2013
Сообщений: 69
10.11.2015, 00:02 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
den_droid,
Извинте, что уидаю мобильную ссылкуhttp://m.youtube.com/watch?v=B_Rk9TiV46o
Тут в 7 туториалов создается приложение с php прослойкой. Сам просмотрел и научился.
1
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
10.11.2015, 07:58  [ТС] #7
Rainmaker93, благодарю!
0
Russtem81
3 / 3 / 1
Регистрация: 15.10.2015
Сообщений: 51
10.11.2015, 08:38 #8
Цитата Сообщение от YuraAAA Посмотреть сообщение
den_droid, Apache http client, HttpUrlConnection итд. С помощью GET/POST/PUT запроса
__________________
большинство пользователей решают именно так, но вот вопрос как защитить скрипт с стороны сервера от всевозможного шлака. т.е. если какой либо злодей получил URL POST скрипта JSON, что ему мешает загадить таблицу?
0
Rainmaker93
3 / 3 / 1
Регистрация: 12.09.2013
Сообщений: 69
10.11.2015, 09:17 #9
den_droid, Пожалуйста

P.S.
Могут возникнуть проблемы с кодировкой. Если возникнут, читайте тут Android - PhP - MySql. Кодировка

Добавлено через 2 минуты
Russtem81,
Защитить можно механизмом, предоставленным mysqli_bind_param. Он защищает от SQL инъекций.
а механизм идентификации и настройки сервера остается за разработчиком.
0
MisterMr
1 / 1 / 0
Регистрация: 07.04.2015
Сообщений: 41
10.11.2015, 10:45 #10
Russtem81, Наличие токенов и проверка по ним может быть ?)
0
YuraAAA
1578 / 1319 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
10.11.2015, 12:14 #11
MisterMr, точно. Нужно использовать токены авторизации + SSL
0
MisterMr
1 / 1 / 0
Регистрация: 07.04.2015
Сообщений: 41
10.11.2015, 16:28 #12
YuraAAA, не совсем понимаю, зачем ssl при http запросах
0
YuraAAA
1578 / 1319 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
10.11.2015, 16:29 #13
MisterMr, чтобы скрыть header и body. И не при http, а при https протоколе
0
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
10.11.2015, 17:50  [ТС] #14
Простите меня за мой тупизм... Помогите пожалуйста этот код сократить до того, что приложение просто получает значение переменной и отправляет его, а не так замудренно как я нашёл... Ещё раз, простите
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
package inducesmile.com.androidloginandregistration;
 
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
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.JSONException;
import org.json.JSONObject;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
 
 
public class RegisterActivity extends ActionBarActivity {
 
    protected EditText username;
    private EditText password;
    private EditText email;
    protected String enteredUsername;
    private final String serverUrl = "Path to your server";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);
 
        username = (EditText)findViewById(R.id.username_field);
        password = (EditText)findViewById(R.id.password_field);
        email = (EditText)findViewById(R.id.email_field);
        Button signUpButton = (Button)findViewById(R.id.sign_up);
 
        signUpButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                enteredUsername = username.getText().toString();
                String enteredPassword = password.getText().toString();
                String enteredEmail = email.getText().toString();
 
                if(enteredUsername.equals("") || enteredPassword.equals("") || enteredEmail.equals("")){
                    Toast.makeText(RegisterActivity.this, "Username or password or email must be filled", Toast.LENGTH_LONG).show();
                    return;
                }
                if(enteredUsername.length() <= 1 || enteredPassword.length() <= 1){
                    Toast.makeText(RegisterActivity.this, "Username or password length must be greater than one", Toast.LENGTH_LONG).show();
                    return;
                }
                // request authentication with remote server4
                AsyncDataClass asyncRequestObject = new AsyncDataClass();
                asyncRequestObject.execute(serverUrl, enteredUsername, enteredPassword, enteredEmail);
            }
        });
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_register, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
    private class AsyncDataClass extends AsyncTask<String, Void, String> {
 
        @Override
        protected String doInBackground(String... params) {
 
            HttpParams httpParameters = new BasicHttpParams();
            HttpConnectionParams.setConnectionTimeout(httpParameters, 5000);
            HttpConnectionParams.setSoTimeout(httpParameters, 5000);
 
            HttpClient httpClient = new DefaultHttpClient(httpParameters);
            HttpPost httpPost = new HttpPost(params[0]);
 
            String jsonResult = "";
            try {
                List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                nameValuePairs.add(new BasicNameValuePair("username", params[1]));
                nameValuePairs.add(new BasicNameValuePair("password", params[2]));
                nameValuePairs.add(new BasicNameValuePair("email", params[3]));
                httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
 
                HttpResponse response = httpClient.execute(httpPost);
                jsonResult = inputStreamToString(response.getEntity().getContent()).toString();
                System.out.println("Returned Json object " + jsonResult.toString());
 
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return jsonResult;
        }
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
        }
        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            System.out.println("Resulted Value: " + result);
            if(result.equals("") || result == null){
                Toast.makeText(RegisterActivity.this, "Server connection failed", Toast.LENGTH_LONG).show();
                return;
            }
            int jsonResult = returnParsedJsonObject(result);
            if(jsonResult == 0){
                Toast.makeText(RegisterActivity.this, "Invalid username or password or email", Toast.LENGTH_LONG).show();
                return;
            }
            if(jsonResult == 1){
                Intent intent = new Intent(RegisterActivity.this, LoginActivity.class);
                intent.putExtra("USERNAME", enteredUsername);
                intent.putExtra("MESSAGE", "You have been successfully Registered");
                startActivity(intent);
            }
        }
        private StringBuilder inputStreamToString(InputStream is) {
            String rLine = "";
            StringBuilder answer = new StringBuilder();
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            try {
                while ((rLine = br.readLine()) != null) {
                    answer.append(rLine);
                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return answer;
        }
    }
    private int returnParsedJsonObject(String result){
 
        JSONObject resultObject = null;
        int returnedResult = 0;
        try {
            resultObject = new JSONObject(result);
            returnedResult = resultObject.getInt("success");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return returnedResult;
    }
}
0
10.11.2015, 17:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2015, 17:50
Привет! Вот еще темы с ответами:

Передача значения переменной Activity в другой класс - Программирование Android
Есть активность: public class Menu extends Activity { OnClickListener lt; EditText Day, Month, Year, BirthDay, BirthMonth,...

Передача переменой через гиперссылку - PHP
на одной странице отображается список, для редактирования: while($record = mysql_fetch_array($sql)) { print...

При получении значения переменой из функции php ругается на то, что нет значения, да и js выдает мне undefined - JavaScript
Доброе время суток пытаюсь получить значение переменой из функции для того чтоб потом передать ее в php но php ругается на то что нет...

Select передача выбранного значения на сервер без перезагрузки страницы - jQuery
Доброго времени суток всем! Гуру помогите разобраться с основами ajax. задача наверное для многих окажется очень простой, я же никак не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.