Я получаю с сервера ответ о регистрации. Если ответ 1 то логин свободен, если 0 то нет. В приложении проверяю этот ответ. Но то что мне приходит никак не хочет сравниваться.
` String resp = null;
try {
db.execute("registration.php", newacc);
resp = db.get();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
//test.setText(resp);
if (!resp.equals("0")) {
startActivity(new Intent(Registration.this, Login.class));
} else toast4.show();`
Я уже перепробовал все что мог но ничего не работает. Если приходит 0, то приложение все равно заходит в блок if и переходит на другую активити. Вот еще PHP код
<?php
require "conn.php";
mysqli_set_charset($conn,"utf8");
if (isset ($_POST['login'],$_POST['password'],$_POST['salt'],$_POST['reg_date'],$_POST['name'],$_POST['number'])){
$login= $_POST['login'];
$pass= $_POST['password'];
$salt= $_POST['salt'];
$reg_date= $_POST['reg_date'];
$name= $_POST['name'];
$number= $_POST['number'];
$querry0 = mysqli_query($conn,"SELECT login FROM account WHERE login = '$login'");
if(mysqli_num_rows($querry0) == 0){
$querry1 = mysqli_query($conn,"INSERT INTO account (login, password,salt, registration_date) VALUES ('$login', '$pass','$salt', '$reg_date')") or die(mysqli_error($conn));
$querry2 = mysqli_query($conn,"INSERT INTO client (client_name, phone_number, email) VALUES ('$name', '$number','$login' )") or die(mysqli_error($conn));
echo "1";
}else echo "0";
}else echo "err";
?>
Перевел строки в HEX: строка с сервера - efbbbf30, а с которой сравниваю - 30.При чем везде стоит кодировка в UTF-8. Как с этим быть?
В общем я теперь просто сравниваю строки в HEX. Костыль, но работает.
php добавляет BOM
(Byte Order Mark) в Юникод.
Java, а следовательно Андроид при декодировании не удаляет его (уж не знаю почему) и надо это делать самому.
В Вашем случае нужен один символ (как я понял) и можно сравнить только его:
if (resp.charAt(resp.length() - 1) != '0')) {
startActivity(new Intent(Registration.this, Login.class));
} else toast4.show();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
ЗдравствуйтеЗадача научиться получать данный (массива байт) с аппаратных сканеров штрих-кодов с использованием JavaPOS
Есть ли какой нибудь способ/фреймворк в Java обращаться к параметрам запроса по имени, а не по индексу?
Как-то можно подружить JDBC драйвер к 12 Ораклу и Java9? Я использую ojdbc и ucp и при компиляции получаю кучу ошибок вида
Недавно узнал что на JS можно воспроизводить определённый кусок mp3, то есть, например, есть аудио файл длительностью 30 секунд и есть три кнопки,...