Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
#1

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

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

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

Добавлено через 3 часа 9 минут
Ребят, помогите

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

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

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

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

Передача значения из SPiner
В диалоге происходит выбор названия таблицы в Spiner списке. По нажатию кнопки...

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

13
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 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
4 / 4 / 2
Регистрация: 12.09.2013
Сообщений: 69
10.11.2015, 00:02 #6
Лучший ответ Сообщение было отмечено den_droid как решение

Решение

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
Сообщений: 59
10.11.2015, 08:38 #8
Цитата Сообщение от YuraAAA Посмотреть сообщение
den_droid, Apache http client, HttpUrlConnection итд. С помощью GET/POST/PUT запроса
__________________
большинство пользователей решают именно так, но вот вопрос как защитить скрипт с стороны сервера от всевозможного шлака. т.е. если какой либо злодей получил URL POST скрипта JSON, что ему мешает загадить таблицу?
0
Rainmaker93
4 / 4 / 2
Регистрация: 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 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 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 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 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

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

Передача значения переменной Activity в другой класс
Есть активность: public class Menu extends Activity { OnClickListener lt;...

Передача в Service постоянно обновляющего свои значения объекта
Передаю в Service объект с помощью Parceble, но он сохраняет фиксированное...


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

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

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