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

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

Войти
Регистрация
Восстановить пароль
 
илья9696
73 / 73 / 16
Регистрация: 15.11.2014
Сообщений: 433
Завершенные тесты: 1
#1

Отправка логина, пароля на сервер с эмулятора - Программирование Android

15.05.2016, 02:43. Просмотров 485. Ответов 4
Метки нет (Все метки)

Доброго дня.


Отправляю на сервер логин и пароль, чтобы проверить совпадение пары в БД, но почему-то не отправляет и пишет ошибку E/JSON*Parser: Error parsing data org.json.JSONException: Value ���� of type java.lang.String cannot be converted to JSONObject

Есть подозрение, что PHP скрипт кривой, может ли он относится к данной ошибке?

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
@SuppressWarnings("deprecation")
public class MainActivity extends AppCompatActivity {
    //
    Button buttonCreateUser, buttonLogin;
    EditText ID_CUSTOMER, PASSWORD;
    //
    final static String NOT_CONNECT = "NOT_CONNECT";
    final static String SUCCESS = "SUCCESS";
    final static String FAILED = "FAILED";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        buttonCreateUser = (Button)findViewById(R.id.buttonCreateUser); // кнопка создания пользователей
        buttonLogin = (Button)findViewById(R.id.buttonLogin); // кнопка входа пользователя
        ID_CUSTOMER = (EditText)findViewById(R.id.ID_CUSTOMER);
        PASSWORD = (EditText)findViewById(R.id.PASSWORD);
    }
 
    public void setButtonLogin(View v){
        AsyncTask<String, Void, JSONObject> task = new AsyncTask<String, Void, JSONObject>() {
                @Override
                protected JSONObject doInBackground(String... params) {
                    JSONParser jsonParser = new JSONParser();
                    List<NameValuePair> loginpass = new ArrayList<NameValuePair>();
                    loginpass.add(new BasicNameValuePair("ID_CUSTOMER", params[0]));
                    loginpass.add(new BasicNameValuePair("PASSWORD", params[1]));
                    JSONObject json = jsonParser.makeHttpRequest("http://5.19.187.230/connect.php", JSONParser.POST, loginpass);
                    return json;
                }
                @Override
                protected void onPostExecute(JSONObject result) {
                    if (result != null) {
                        super.onPostExecute(result);
                        String res = "";
                        try {
                            res = result.getString("status");
                            switch (res) {
                                case NOT_CONNECT:
                                    Toast toast_not_connect = Toast.makeText(getApplicationContext(), "Сервер недоступен", Toast.LENGTH_SHORT);
                                    toast_not_connect.setGravity(Gravity.CENTER, 0, 0);
                                    toast_not_connect.show();
                                    break;
 
                                case SUCCESS:
                                    Toast toast_success = Toast.makeText(getApplicationContext(), "Вход выполнен", Toast.LENGTH_SHORT);
                                    toast_success.setGravity(Gravity.CENTER, 0, 0);
                                    toast_success.show();
                                    Intent intentB = new Intent(MainActivity.this, OrdersActivity.class);
                                    startActivity(intentB);
                                    break;
 
                                case FAILED:
                                    Toast toast_failed = Toast.makeText(getApplicationContext(), "Не правильно введен логин\n или пароль", Toast.LENGTH_SHORT);
                                    toast_failed.setGravity(Gravity.CENTER, 0, 0);
                                    toast_failed.show();
                                    break;
                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }
            };
            task.execute(ID_CUSTOMER.getText().toString(), PASSWORD.getText().toString());
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2016, 02:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отправка логина, пароля на сервер с эмулятора (Программирование Android):

Скачивание текста с применением логина и пароля - Программирование Android
Есть необходимость скачать текст (html) с определенного адреса. Для получения доступа необходимы логин и пароль, они имеются. Подскажите...

DropBox Api. Авторазация без ввода логина и пароля - Программирование Android
Задача такая: программа должна сохранять рейтинг пользователя на сервере dropbox. Должен создаваться файл с именем по id(например на...

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

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

Отправка nmea на сервер - Программирование Android
Вот таким образом пытаюсь отправить nmea строку на сайт(php) url = &quot;http://213.57.209.92:8080&quot;; client = new DefaultHttpClient(); ...

Отправка данных на сервер - Программирование Android
Нужна помощь. У меня кое-какие проблемы с кодом. Я отправляю данные на удаленный сервер, вроде все правильно написано, но выдает много...

4
YuraAAA
1576 / 1317 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
15.05.2016, 12:20 #2
илья9696, да, он отвечает String объектом, причём с кодировкой надо ещё разобраться, а Вы пытаетесь получить JSONObject
0
Pablito
2477 / 1961 / 611
Регистрация: 12.05.2014
Сообщений: 6,866
Завершенные тесты: 1
15.05.2016, 12:58 #3
сервер отдает ответ в кодировке "Windows-1251"
на самом деле ответ от него выглядит так
HTML5
1
2
3
4
5
6
7
8
9
10
11
База подключилась<br><br />
                          <b>Warning</b>:  ocibindbyname(): ORA-01036: illegal variable name/number in <b>C:\Server\data\htdocs\connect.php</b> on line <b>13</b><br />
                          <br />
                          <b>Warning</b>:  ocibindbyname(): ORA-01036: illegal variable name/number in <b>C:\Server\data\htdocs\connect.php</b> on line <b>14</b><br />
                          <br />
                          <b>Notice</b>:  Undefined variable: ID_CUSTOMER in <b>C:\Server\data\htdocs\connect.php</b> on line <b>35</b><br />
                          NULL
                          <br />
                          <b>Notice</b>:  Undefined variable: PASSWORD in <b>C:\Server\data\htdocs\connect.php</b> on line <b>36</b><br />
                          NULL
                          {"status":"SUCCESS"}
0
илья9696
73 / 73 / 16
Регистрация: 15.11.2014
Сообщений: 433
Завершенные тесты: 1
15.05.2016, 13:52  [ТС] #4
У меня есть классы отправки данных на сервер(оформление заказа, регистрация), он идентичен этому и он работает, только там PHP адекватный, вот так например он выглядит, другой скрпт такой же, только вставка других данных, для этого класса не получается написать скрипт, слаб в PHP
PHP
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
<?php
error_reporting(0);
$response = array();
$db_connect = oci_connect('','','');
if (!$db_connect)
{
    $response['status'] = 'NOT_CONNECT';
}else{
    $stmt = oci_parse($db_connect, 'INSERT INTO CUSTOMERS VALUES
    (:ID_CUSTOMER, :PASSWORD, :FIO, :PHONE, :NUMBER_CAR)');
    OCIBindByName($stmt, ":ID_CUSTOMER", $_POST['ID_CUSTOMER']);
    OCIBindByName($stmt, ":PASSWORD", $_POST['PASSWORD']);
    OCIBindByName($stmt, ":FIO", $_POST['FIO']);
    OCIBindByName($stmt, ":PHONE", $_POST['PHONE']);
    OCIBindByName($stmt, ":NUMBER_CAR", $_POST['NUMBER_CAR']);
    
    $result = oci_execute($stmt);
    if(!$result){
        $response["status"] = "FAILED";
    }else{
        $response["status"] = "SUCCESS";
    }
    oci_free_statement($stmt);
    oci_close($db_connect);
    $db_connect = null;
}
echo json_encode($response);
die();
?>
Добавлено через 2 минуты
Только там естественно вставка была, а тут надо селект сделать и сравнить полученные данные с данными на сервере

Добавлено через 14 минут
Определил ошибку, из-за надписи в скрипте PHP была

PHP
1
echo 'База подключена<br>';
Добавлено через 11 минут
Теперь даже выполняется вход в эмуляторе, но естественно с любыми данными логина и пароля
0
Pablito
2477 / 1961 / 611
Регистрация: 12.05.2014
Сообщений: 6,866
Завершенные тесты: 1
15.05.2016, 13:53 #5
почему бы не продолжить этот монолог в разделе php ?
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2016, 13:53
Привет! Вот еще темы с ответами:

Android, отправка фотографии на сервер - Программирование Android
Мне нужно отправить файл на сервер. После выбора фотографии в галереи мы вызываем данный метод, которому передаем файл: public static...

Отправка post запросов на сервер - Программирование Android
доброго, имеется программа на пк и хочу сделать аналог для андроида, но в андроиде я не силен, в общем нужно три формы логин, веббровсер и...

Okhttp3 Отправка видео на сервер - Программирование Android
Отправляю видео на сервер. public void DownloadVideoServer(){ File file = new...

Отправка смс на сервер. Кодировка? - Программирование Android
Сохраняю Смс в базе, отправляю на сервер и вывожу на веб странице. Где то в процессе сбивается кодировка и на сервере вместо русского...


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
15.05.2016, 13:53
Ответ Создать тему
Опции темы

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